Двоичные приставки

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Пебибайт»)
Перейти к навигации Перейти к поиску
Измерения в байтах
ГОСТ 8.417—2002 Приставки СИ Приставки МЭК
Название Обозначение Степень Название Степень Название Обозначение Степень
байт Б 100 100 байт B Б 20
килобайт Кбайт 103 кило- 103 кибибайт KiB КиБ 210
мегабайт Мбайт 106 мега- 106 мебибайт MiB МиБ 220
гигабайт Гбайт 109 гига- 109 гибибайт GiB ГиБ 230
терабайт Тбайт 1012 тера- 1012 тебибайт TiB ТиБ 240
петабайт Пбайт 1015 пета- 1015 пебибайт PiB ПиБ 250
эксабайт Эбайт 1018 экса- 1018 эксбибайт EiB ЭиБ 260
зеттабайт Збайт 1021 зетта- 1021 зебибайт ZiB ЗиБ 270
йоттабайт Ибайт 1024 йотта- 1024 йобибайт YiB ЙиБ 280
роннабайт - 1027 ронна- 1027 - - - -
кветтабайт - 1030 кветта- 1030 - - - -

Двоичные (бинарные) приставки — приставки перед наименованиями или обозначениями единиц измерения информации, применяемые для формирования кратных единиц, отличающихся от базовой единицы в определённое целое, являющееся целой положительной степенью числа 210, число раз (210 = 1024, (210)2 = 220 = 10242, (210)3 = 230 = 10243 и т. д.). Двоичные приставки используются для образования единиц измерения информации, кратных битам и байтам.

Благодаря близости чисел 1024 и 1000 двоичные приставки построены по аналогии со стандартными десятичными приставками СИ. Наименование каждой двоичной приставки получается заменой последнего слога наименования соответствующей десятичной приставки на би (от лат. bīnārius — двоичный).

Приставки от 210 до 260 (киби, меби, гиби, теби, пеби, эксби) были предложены шведским учёным Андерсом Тором[англ.] и введены Международной электротехнической комиссией (МЭК) в 1999 году во второй поправке к стандарту IEC 60027-2[1][2]. В третьей редакции стандарта IEC 60027-2, принятой в 2005 году, были добавлены приставки 270 и 280 (зеби и йоби)[1][3].

С октября 2016 года в России действует национальный стандарт ГОСТ IEC 60027-2-2015 «Обозначения буквенные, применяемые в электротехнике. Часть 2. Электросвязь и электроника»[4], идентичный международному стандарту IEС 60027-2:2005.

Номенклатура приставок

[править | править код]
Приставки
Двоичная
приставка
МЭК
Множитель двоичных
единиц измерения
Обозначение МЭК Десятичная
приставка
СИ
Множитель
десятичных
единиц
измерения
биты байты
киби- 210 = 1024 Кибит КиБ кило- 103
меби- 220 = 1 048 576 Мибит МиБ мега- 106
гиби- 230 = 1 073 741 824 Гибит ГиБ гига- 109
теби- 240 = 1 099 511 627 776 Тибит ТиБ тера- 1012
пеби- 250 = 1 125 899 906 842 624 Пибит ПиБ пета- 1015
эксби- 260 = 1 152 921 504 606 846 976 Эибит ЭиБ экса- 1018
зеби- 270 = 1 180 591 620 717 411 303 424 Зибит ЗиБ зетта- 1021
йоби- 280 = 1 208 925 819 614 629 174 706 176 Йибит ЙиБ йотта- (иотта-) 1024

В российском ГОСТ 8.417-2002 («Единицы величин») в приложении А «Единицы количества информации» есть (исключённое в ГОСТ 8.417—2024[5]) упоминание «исторически сложившейся» практики некорректного использования общепринятых десятичных приставок (кило-, мега- и т. п.) в значении двоичных множителей байта и нестандартного использования обозначения 1 Кбайт = 1024 байт (в отличие от 1 кбайт = 1000 байт)[6].

Более поздний документ, «Положение о единицах величин, допускаемых к применению в Российской Федерации», утверждённое Правительством РФ 31 октября 2009 года, устанавливает, что наименование и обозначение единицы количества информации «байт» (1 байт = 8 бит) применяются с двоичными приставками «Кило», «Мега», «Гига», которые соответствуют множителям 210, 220 и 230 (1 Кбайт = 1024 байт, 1 Мбайт = 1024 Кбайт, 1 Гбайт = 1024 Мбайт). Указанные приставки пишутся с заглавной буквы[7].

Тем же Положением допускается применение и международного обозначения единицы информации с приставками «K» «M» «G» (KB, MB, GB, Kbyte, Mbyte, Gbyte).

Аналогичный стандарт IEEE 1541-2002 введён в 2008 г.

Основной документ Международной системы единиц (СИ) «Брошюра СИ» (фр. Brochure SI, англ. The SI Brochure) подчёркивает, что приставки СИ соответствуют исключительно степеням числа десять, и рекомендует во избежание некорректного использования наименований приставок СИ для двоичных приставок применять наименования, введённые МЭК[8].

Приказом Федерального агентства по техническому регулированию и метрологии с 1 октября 2016 года в качестве национального стандарта Российской Федерации введён в действие ГОСТ IEC 60027-2-2015 «Обозначения буквенные, применяемые в электротехнике. Часть 2. Электросвязь и электроника»[9], идентичный международному стандарту IEС 60027-2:2005. Документ поддерживает стандартное написание десятичных префиксов для указания единицы количества информации (например, сокращение кБ для килобайт, кб для килобит)[10], а в качестве префиксов для кратных двоичных единиц измерения вводятся обозначения Ки (Ki), Ми (Mi), Ги (Gi), Ти (Ti), Пи (Pi) и т.д[10].

Действующий с сентября 2024 года ГОСТ 8.417—2024 в части двоичных приставок ссылается на ГОСТ IEC 60027-2, не делая, в отличие от ГОСТ 8.417—2002, оговорок о существовавших случаях смешения их с десятичными[5][6], но предупреждая о риске использования для байта сокращения «Б», совпадающего с сокращением логарифмической единицы бел[5].

Корни проблемы

[править | править код]
Разница ошибок между десятичными и двоичными приставками при увеличении объёма памяти

Двоичная система счисления имеет широчайшее применение в вычислительной технике. В частности, двоичными числами нумеруются ячейки цифровой памяти. Количество адресов, возможных на некоторой шине, равно 2N, где N — количество её разрядов. Поэтому и микросхемы памяти снабжают количеством ячеек, равным какой-то степени двойки.

Число 210 = 1024 достаточно близко к тысяче, используемой в качестве основания десятичных приставок СИ. Среди степеней двойки вплоть до 293 ни одна больше не близка настолько к степени десяти; к тому же показатель двоичной степени «10» сам по себе оказался удобен для грубого пересчёта двоичных степеней на привычные людям десятичные числа. Для обозначения 210 = 1024 байт придумали единицу «К» (ка, очевидно, искажённое «кило»). В частности, в документации к одной из советских ЭВМ сказано, что объём её памяти 32 К слов. Из-за близости множителей 1024 и 1000 в разговорной речи «К» всё равно называли «кило», и вскоре такая интерпретация приставки кило стала стандартом де-факто, как и экстраполяция на другие приставки: 1 «килобайт» = 1024 байтам, 1 «мегабайт» = 1024 килобайтам = 1 048 576 байтам, и т. д.

Таким образом термины, предназначенные для десятичных приставок СИ, стали применяться к близким двоичным числам. Причём эти приставки часто используют по своему усмотрению, то есть одни понимают их как двоичные приставки, а другие как десятичные. Например, размер оперативной памяти компьютера обычно приводится в двоичных единицах (1 килобайт = 1024 байтам), а размер дисков их производители указывают в десятичных (1 килобайт = 1000 байтам). Однако на письме для множителя 1024 традиционно использовалось сокращение «К», в отличие от «к»=1000, используемого в СИ.

Чем больше число, тем большего значения может достигать относительная ошибка, вызванная неправильным пониманием использованной приставки. В частности, разница между «двоичным» и «десятичным» килобайтом 2,4 %, в то время как между двоичным и десятичным терабайтом — почти 10 % (9,95 %). Для того, чтобы разрешить эту путаницу, и были введены особые двоичные приставки, отличные от «близких» по численному значению десятичных.

Значение приставок согласно стандарту JEDEC

[править | править код]

Объединенный инженерный совет по электронным устройствам (англ. Joint Electron Devices Engineering Council, JEDEC), занимающийся разработкой и продвижением стандартов для микроэлектронной промышленности, разработал в 2002 году стандарт JEDEC 100B.01[англ.], определяющий значения терминов и буквенных символов. Целью данного стандарта является содействие единообразному использованию символов, аббревиатур, терминов и определений в полупроводниковой промышленности. К примеру, спецификация стандарта в качестве единицы измерения количества информации определяет значение приставки K множителем, равным 1024 (210), то есть килобайт обязан быть обозначен как Kbyte или KB и иметь значение, равное 1024 байт.

Спецификация стандарта определяет приставки следующим образом:[11]

  • kilo (K): как множитель, равный 1024 (210).
  • mega (M): как множитель, равный 1 048 576 (220 или K2, где коэффициент K = 1024).
  • giga (G): как множитель, равный 1 073 741 824 (230 или K3, где коэффициент K = 1024).
  • tera (T): как множитель, равный 1 099 511 627 776 (240 или K4, где коэффициент K = 1024).

Употребление двоичных и десятичных приставок

[править | править код]
Приставка Обозначение Двоичные приставки Десятичные приставки Относит.
ошибка, %
кило к, k 210 = 1024 103 = 1000 2,40
мега М, M 220 = 1 048 576 106 = 1 000 000 4,86
гига Г, G 230 = 1 073 741 824 109 = 1 000 000 000 7,37
тера Т, T 240 = 1 099 511 627 776 1012 = 1 000 000 000 000 9,95
пета П, P 250 = 1 125 899 906 842 624 1015 = 1 000 000 000 000 000 12,59
экса Э, E 260 = 1 152 921 504 606 846 976 1018 = 1 000 000 000 000 000 000 15,29
зетта З, Z 270 = 1 180 591 620 717 411 303 424 1021 = 1 000 000 000 000 000 000 000 18,06
йотта Й, Y 280 = 1 208 925 819 614 629 174 706 176 1024 = 1 000 000 000 000 000 000 000 000 20,89

Двоичный подход

[править | править код]

Приставки «кило-», «мега-», «гига-» понимаются как двоичные:

  • В файловых менеджерах и другом программном обеспечении для сокращённого задания размера файлов. То есть, если программа говорит, что размер файла равен 100 «КБ» (KB), то его размер приблизительно равен 102 400 байт. Однако в некоторых современных файловых менеджерах встречается правильное указание размера файлов (с использованием сокращённой формы производных двоичных приставок, например «КиБ»).
    Использование двоичных приставок в KDE 4 для указания размера файлов
  • Производителями полупроводниковой памяти: оперативных запоминающих устройств (ОЗУ), видеопамяти.
  • Объём компакт-диска (но не DVD) задаётся именно в двоичных мегабайтах.
  • Согласно ГОСТ 8.417-2002, приставку К- (заглавной буквой) применительно к байтам исторически некорректно[6] использовали (и используют) для обозначения 1024 байт. Стандарт, однако, явно не указывает, какое написание единицы «1024 байт» следует считать корректным.
  • «Положение о единицах величин, допускаемых к применению в Российской Федерации» устанавливает[7], что наименование и обозначение единицы количества информации «байт» применяются с двоичными приставками «Кило», «Мега» и «Гига», которые соответствуют множителям 210, 220 и 230.

Основные аргументы: традиционное для компьютерной техники использование двоичных кратных, непроизносимость слов типа «гибибайт» или «Гбайт».

Десятичный подход

[править | править код]

Приставки «кило-», «мега-», «гига-» понимаются как десятичные:

  • Ёмкость жёстких и оптических дисков, SSD-накопителей задаётся именно в десятичных мегабайтах (исключение: компакт-диски, их объём задается в двоичных мегабайтах).
  • При неформальном общении (например, про файл в 100 тысяч байт могут сказать «файл в 100 килобайт»).
  • При обозначении скоростей телекоммуникационных соединений, например, 100 Мбит/с в стандарте 100BASE-TX («медный» Fast Ethernet) соответствует скорости передачи именно 100 000 000 бит/с, а 10 Гбит/с в стандарте 10GBASE-X (Ten Gigabit Ethernet) — 10 000 000 000 бит/с.

Основные аргументы: Строгое соответствие системе СИ; повсеместное употребление десятичной системы счисления; завышение объёма носителей при помощи более мелкой единицы («коммерческие мегабайты»).

Применяемое в телекоммуникациях понятие «килобит» означает тысячу битов (по ГОСТ 8.417-2002). Впрочем, из-за влияния «килобайта» некоторые люди и организации для однозначности употребляют вместо «килобита» выражение «тысяча бит».

Ёмкость трёхдюймовой дискеты на 1,44 МБ (включая служебные данные — загрузочный сектор, корневой каталог и FAT) задаётся в двоично-десятичных мегабайтах (1000 КиБ). То есть фактически вместимость трёхдюймовой дискеты равна 1440 кибибайтам, или же 1 474 560 байтам, из которых для записи доступны 1 457 664. Аналогично, трёхдюймовая дискета на 2,88 МБ в действительности вмещает 2880 кибибайт, или же 2 949 120 байт.

Ёмкость флэш-карт памяти и USB-флэшек — это полная ёмкость микросхемы (двоичная) минус технический объём, который может быть больше или меньше. Соответственно, неформатированная ёмкость флэшки — очень приблизительно десятичная (обычно несколько больше).

Примечания

[править | править код]
  1. 1 2 Obituary - Anders J. Thor, a universal linguist | IEC e-tech | Issue' 05/2012. Дата обращения: 2 января 2019. Архивировано 3 января 2019 года.
  2. IEC 60027-2:1972/AMD2:1999 Withdrawn. Amendment 2 - Letter symbols to be used in electrical technology. Part 2: Telecommunications and electronics. Дата обращения: 2 января 2019. Архивировано 3 января 2019 года.
  3. IEC 60027-2:2005 Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics. Дата обращения: 2 января 2019. Архивировано 3 января 2019 года.
  4. 3.8.3 Префиксы для кратных двоичных единиц измерения // ГОСТ IEC 60027-2—2015. Дата обращения: 3 мая 2020. Архивировано 25 марта 2019 года.
  5. 1 2 3 Приложение Б (справочное). Единицы количества информации // ГОСТ 8.417—2024 Государственная система обеспечения единства измерений. Единицы величин. — Москва: Российский институт стнадартизации, 2024. — С. 20. — 24 с.
  6. 1 2 3 Приложение А. Единицы количества информации // ГОСТ 8.417—2002 Государственная система обеспечения единства измерений. Единицы величин. — Москва, 2003. — 33 с. Архивировано 24 сентября 2023 года.
  7. 1 2 Положение о единицах величин, допускаемых к применению в Российской Федерации. Дата обращения: 23 марта 2013. Архивировано из оригинала 2 ноября 2013 года.
  8. Decimal multiples and submultiples of SI units. SI prefixes (англ.). SI Brochure: The International System of Units (SI). Bureau International des Poids et Mesures. Дата обращения: 25 июля 2015. Архивировано 17 июля 2018 года.
  9. Приказ Федерального агентства по техническому регулированию и метрологии от 09.10.2015 N 1508-ст "О введении в действие межгосударственного стандарта" | ГАРАНТ. Дата обращения: 2 января 2019. Архивировано 3 января 2019 года.
  10. 1 2 3.8.3 Префиксы для кратных двоичных единиц измерения // ГОСТ IEC 60027-2—2015. — Москва: Стандартинформ, 2016. — С. 64.
  11. JEDEC Standards & Documents: 100b01 Архивная копия от 19 февраля 2014 на Wayback Machine «Terms, Definitions, and Letter Symbols for Microcomputers, Microprocessors, and Memory Integrated Circuits» — Dec 2002 (англ.)