Гигабайт и мегабайт: почему 1000 и 1024 — оба ответа верны
В десятичной системе 1 гигабайт = 1000 мегабайт, в двоичной (которую используют операционные системы) — 1 гибибайт = 1024 мебибайта. Разница возникает из-за исторических стандартов: производители накопителей применяют десятичные множители для удобства, а ОС — двоичные, так как память адресуется степенями двойки.
Оглавление
Двоичная и десятичная системы: в чём разница
| Единица | Двоичная (IEC) | Десятичная (SI) | Где встречается |
|---|---|---|---|
| Кило- | 1 КиБ = 1 024 байта | 1 КБ = 1 000 байт | ОС / маркировка устройств |
| Мега- | 1 МиБ = 1 024 КиБ | 1 МБ = 1 000 КБ | размер файлов / тарифы |
| Гига- | 1 ГиБ = 1 024 МиБ | 1 ГБ = 1 000 МБ | оперативная память / накопители |
| Тера- | 1 ТиБ = 1 024 ГиБ | 1 ТБ = 1 000 ГБ | облачные хранилища / жёсткие диски |
Двоичная система (основание 2) естественна для компьютеров: адресация памяти, размеры блоков и страниц кратны степеням двойки. Десятичная (основание 10) удобна для людей и маркетинга — проще оперировать круглыми числами.
Почему возникла путаница
Исторически в информатике использовали приставки «кило-», «мега-», «гига-» для обозначения степеней двойки. В 1998 году Международная электротехническая комиссия (МЭК) ввела отдельные обозначения для двоичных единиц: КиБ, МиБ, ГиБ (kibi-, mebi-, gibi-). Однако многие ОС, программы и производители проигнорировали нововведение, сохранив старые названия.
Если видите в спецификациях «ГБ» — скорее всего, имеется в виду 10⁹ байт. Если в свойствах файла ОС показывает «ГБ» — чаще всего это 2³⁰ байт. Для точности ищите обозначения ГиБ/МиБ.
Как это влияет на реальный объём устройств
Вы купили SSD на 500 ГБ. В спецификации указано: 500 000 000 000 байт (десятичная система). В проводнике Windows или macOS этот же объём отобразится как ~465 ГиБ, потому что:
500 000 000 000 байт ÷ 1 073 741 824 (байт в 1 ГиБ) ≈ 465,66 ГиБ
Разница ~7% — не брак и не ошибка. Это математическое следствие разных систем счисления. Дополнительно часть места занимают системные разделы и форматирование.
Аналогичная ситуация с тарифами мобильного интернета: оператор указывает 10 ГБ = 10 000 МБ (десятичные), а счётчик в телефоне может показывать расход в двоичных единицах.
Как правильно конвертировать единицы
Запомните два ключевых множителя:
- Для десятичной системы: ×1 000 на каждый шаг (КБ → МБ → ГБ → ТБ)
- Для двоичной системы: ×1 024 на каждый шаг (КиБ → МиБ → ГиБ → ТиБ)
Быстрая шпаргалка:
1 ГБ (десятичный) = 1 000 000 000 байт
1 ГиБ (двоичный) = 1 073 741 824 байт
Разница: ~7,37%
Для точных расчётов в коде используйте байты как базовую единицу. Конвертируйте в нужные единицы только на этапе отображения, явно указывая систему (например, «465 ГиБ (двоич.)»).
Частые ошибки
- Путать ГБ и ГиБ в технических расчётах — приводит к ошибкам в планировании ресурсов и бюджета.
- Ожидать, что диск на 1 ТБ покажет ровно 1024 ГБ в ОС — система отобразит ~931 ГиБ, и это нормально.
- Использовать «МБ» для обозначения двоичных величин в документации — создаёт двусмысленность для коллег и автоматизированных систем.
- Игнорировать разницу при оценке скорости передачи — 100 Мбит/с ≠ 100 МБ/с (биты и байты — разные единицы, плюс множители 1000/1024).
FAQ
Почему Windows показывает меньше места, чем указано на коробке диска?
Потому что производители используют десятичные гигабайты (1 ГБ = 10⁹ байт), а Windows отображает объём в двоичных гибибайтах (1 ГиБ = 2³⁰ байт). Разница ~7,37% — математическая норма.
Какую систему используют macOS и Linux?
macOS с версии 10.6 перешла на десятичные единицы для отображения объёма накопителей (как производители). Многие дистрибутивы Linux позволяют выбрать формат отображения. В любом случае, в настройках можно уточнить, какие единицы применяются.
Что писать в коде: MB или MiB?
В коде оперируйте байтами. Для констант используйте явные значения или библиотеки единиц измерения. В комментариях и логах указывайте систему: // 256 МиБ (двоич.) или // 500 МБ (десятич.).
Почему в тарифах интернета 1 ГБ = 1000 МБ, а в загрузке файла — 1024?
Операторы связи и провайдеры используют десятичную систему для упрощения тарификации. Браузеры и менеджеры загрузок часто считают в двоичных единицах, так как это ближе к реальной работе ОС с памятью.
Можно ли изменить систему отображения в Windows?
Напрямую — нет. Но вы можете вручную пересчитывать значения или использовать сторонние утилиты, которые показывают объём в выбранных единицах.