Код «два из пяти»
Код «два из пяти» — это код с постоянным весом , который обеспечивает ровно десять возможных комбинаций двух бит и, таким образом, используется для представления десятичных цифр с использованием пяти битов . [1] Каждому биту присваивается вес, так что сумма установленных битов равна желаемому значению, за исключением нуля.
Согласно Федеральному стандарту 1037C :
- каждая десятичная цифра представлена двоичным числом, состоящим из пяти битов, два из которых имеют один вид, называемые единицами , а три — другого типа, называемые нулями , и
- обычные веса, присваиваемые битовым позициям, составляют 0-1-2-3-6. Однако в этой схеме ноль кодируется как двоичный 01100 ; строго говоря, ранее заявленное 0-1-2-3-6 — это всего лишь мнемонический прием. [2]
Веса дают уникальную кодировку для большинства цифр, но допускают две кодировки для 3: 0+3 или 10010 и 1+2 или 01100. Первая используется для кодирования цифры 3, а вторая используется для представления непредставимого иначе нуля. .
Компьютеры IBM 7070 , IBM 7072 и IBM 7074 использовали этот код для представления каждой из десяти десятичных цифр в машинном слове, хотя они нумеровали позиции битов 0-1-2-3-4, а не с помощью весов. Каждое слово также имело знак-флажок, закодированный с использованием кода «два из трех», который мог быть буквенно -цифровым, – минус или + плюс. При копировании в цифру три бита помещались в позиции 0-3-4. (Таким образом, получаются числовые значения 3, 6 и 9 соответственно.)
Вариантом является Почтовой службы США POSTNET штрих-код , используемый для обозначения почтового индекса для оборудования автоматической сортировки и маршрутизации почты. При этом две высокие полоски используются в качестве единиц, а три коротких полоски — в качестве нулей. Здесь веса, назначенные битовым позициям, равны 7-4-2-1-0. Опять же, ноль кодируется особым образом с использованием комбинации 7+4 (двоичное 11000), которая естественным образом кодирует 11. Этот метод также использовался в североамериканских телефонных многочастотных и перекрестных системах коммутации . [3]
USPS Техника почтового альфа-цифрового кодирования (PLANET) использует те же веса, но с противоположным соглашением о высоте столбцов.
Штрих-код Code 39 использует веса 1-2-4-7-0 (т. е. сначала младший разряд , затем бит четности ) для ширины полос, но он также кодирует два бита дополнительной информации в промежутках между полосами. || ||| пробел используется для цифр.
В следующей таблице представлены десятичные цифры от 0 до 9 в различных кодовых системах «два из пяти»:
Требование установки ровно двух битов строго сильнее, чем проверка четности ; Как и все коды с постоянным весом , код «два из пяти» может обнаруживать не только любую однобитовую ошибку, но и любую однонаправленную ошибку — случаи, в которых все отдельные битовые ошибки относятся к одному типу (все 0 → 1). или все 1→0).
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Военный справочник: энкодеры — угол вала в цифровом формате (PDF) . Министерство обороны США . 1991-09-30. МИЛ-ХДБК-231А. Архивировано (PDF) из оригинала 25 июля 2020 г. Проверено 25 июля 2020 г. (Примечание. Заменяет MIL-HDBK-231(AS) (01.07.1970).)
- ^ В этой статье использованы общедоступные материалы из Федеральный стандарт 1037C . Управление общего обслуживания . Архивировано из оригинала 22 января 2022 г.
- ^ «Музей старинного телефонного оборудования — релейное оборудование XBR #5 MTF» . SimpleThinking.com . Архивировано из оригинала 16 марта 2006 г.