До определенного момента (а именно - до момента выхода емкостей носителей цифровой информации на обывательский уровень, когда для большинства пользователей точное содержание понятия уже не имеет значения) в цифровой терминологии никаких противоречий не было - все, кто сталкивался с байтами и килобайтами по долгу службы знали, что "кило" в данном случае - это 2 в десятой степени, а не 10 в кубе. Но в эпоху бурного роста потребительского спроса на объемы хранимой информации, всё переменилось и производители (именно они, а не те, кто реально имеет дело с кило-, мега- и гигабайтами) стали делать акцент на десятичной системе счисления, превращая двоичные "кило" (и следующие приставки) в десятичные, обкрадывая обычных пользователей.
Поэтому, отвечая на вопрос, можно сказать, что в килобайте, как было, так и осталось 1024 байт, а в мегабайте, соответственно, 1024 килобайт или 1 048 576 байт и т.д. А вот в коммерческих целях покупателям стараются "впарить" меньший объем, "продвигая" его, как объем большего размера.
Как говорится - простая коммерция. И новомодное слово - маркетинг.