Байт

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск
Измерения в байтах
Десятичная приставка Двоичная приставка
Название Символ Степень Название Символ Степень
  МЭК ГОСТ  
байт B 100 байт B байт 20
килобайт kB 103 кибибайт KiB Кбайт 210
мегабайт MB 106 мебибайт MiB Мбайт 220
гигабайт GB 109 гибибайт GiB Гбайт 230
терабайт TB 1012 тебибайт TiB Тбайт 240
петабайт PB 1015 пебибайт PiB Пбайт 250
эксабайт EB 1018 эксбибайт EiB Эбайт 260
зеттабайт ZB 1021 зебибайт ZiB Збайт 270
йоттабайт YB 1024 йобибайт YiB Йбайт 280

Байт (англ. byte) — единица измерения количества информации, в стандартном виде[источник не указан 50 дней] байт считается равным восьми битам (в этом случае может принимать 256 (28) различных значений).


Байт в современных x86 совместимых компьютерах — это минимально адресуемая последовательность фиксированного числа битов. При хранении данных в памяти существует также бит чтения-записи, а для цифровых микросхем - бит синхронизации, т.е. в реализации для x86 байт состоит обычно из 10 битов (из них 8 бит данных и 2 системных бита поддержки). Для того, чтобы подчеркнуть, что имеется в виду восьмибитный байт, в описании сетевых протоколов используется термин «октет» (лат. octet).

Иногда байтом называют последовательность битов, которые составляют подполе машинного слова, используемое для кодирования одного текстового символа (хотя правильней это называть символом, а не байтом). На некоторых компьютерах возможна адресация слов разной длины. Это предусмотрено инструкциями извлечения полей ассемблеров LDB и DPB на PDP-10 и в языке Common Lisp.

Ряд ЭВМ 1950-х и 1960-х годов использовали 6-битовые символы в 48-битовых или 60-битовых машинных словах. В некоторых моделях ЭВМ производства Burroughs Computer Corporation (ныне Unisys) размер символа был равен 9 битам. Во многих современных цифровых сигнальных процессорах используется машинное слово длиной 16 бит и больше.

Название Байт было впервые использовано в 1956 году В. Бухгольцем при проектировании первого суперкомпьютера IBM 7030 для пучка одновременно передаваемых в устройствах ввода-вывода битов (шести штук), позже в рамках того же проекта расширили байт до восьми (23) бит.

Байтовая адресация памяти была впервые применена в системе IBM System/360. В более ранних компьютерах адресовать можно было только целиком машинное слово, состоявшее из нескольких символов, что затрудняло обработку нечисловых данных.

Кратные приставки для образования производных единиц для байта применяются не как обычно: во-первых, уменьшительные приставки не используются совсем, а единицы измерения информации меньшие чем байт называются специальными словами (ниббл и бит); во-вторых, увеличительные приставки означают за каждую тысячу 1024=210 (килобайт равен 1024 байтам, мегабайт равен 1024 килобайтам, или 1 048 576 байтам; и т. д. с гига-, тера- и петабайтами (больше пока не употребляются)). Разница возрастает с ростом веса приставки. Более правильно использовать двоичные приставки, но на практике они пока не применяются, возможно, из-за неблагозвучности — кибибайт, мебибайт, йобибайт и т. п.

Иногда десятичные приставки используются и в прямом смысле, например, при указании ёмкости жёстких дисков: у них гигабайт может обозначать миллион кибибайтов, т. е. 1 024 000 000 байтов, а то и просто миллиард байтов, а не 1 073 741 824 байта, как, например, в модулях памяти; а так же при указании пропускной способности каналов передачи данных (сетей).

[править] Почему в байте именно 8 бит

У старых компьютеров были размеры машинных слов и байтов, отличные от 8 бит. Обычно они были кратны шести. Восемь бит в байте появились только с возникновением System/360 от IBM. Это стало стандартом де-факто, и с начала 1970-х большинство компьютеров использует байты, состоящие из 8 бит, и машинные слова, кратные 8.

У System/360 были 8-битные байты, вероятно, из-за использования BCD-формата представления числа: по 4 бита на каждую цифру (0-9), таким образом один байт мог представлять две цифры. В System/360 были специальные инструкции для обработки данных такого формата, и было бы трудно использовать 6-битные байты для представления BCD, поэтому 8 бит в байте стали наилучшим решением.

По другой версии, 8-битный размер байта завязан на 8-битное числовое представление символа строки в кодировке EBCDIC. Из удобства: один байт = один символ.

[править] Обозначение

Российский ГОСТ 8.417-2002 («Единицы величин») в «Приложении А» для обозначения байта регламентирует использование русской заглавной буквы «Б». Кроме того, констатируется традиция использования приставок СИ вместе с наименованием «байт» для указания двоичных множителей (1 Кбайт = 1024 байт, 1 Мбайт = 1024 Кбайт, 1 Гбайт = 1024 Мбайт и т. д.), причём используется прописная «К» вместо строчной «к», обозначающей множитель 10³.

Использование прописной буквы «Б» для обозначения байта соответствует требованиям ГОСТ и позволяет избежать путаницы между сокращениями от байт и бит. Однако следует учитывать, что в стандарте нет сокращения для «бит», поэтому использование записи вроде «Гб» как синонима для «Гбит» недопустимо.

[править] См. также