Из Википедии, бесплатной энциклопедии
  (Перенаправлен с кода Excess-3 )
Перейти к навигации Перейти к поиску

Превышение-3 , 3-избыток [1] [2] [3] или 10-избыток-3 двоичный код (часто сокращенно XS-3 , [4] 3XS [1] или X3 [5] [6] ), сдвинутый двоичный [7] или код Стибица [1] [2] [8] [9] (после Джорджа Стибица , [10], который построил счетную машину на основе реле в 1937 году [11] [12] ) является самодополнимым двоичным кодом. -кодированный десятичный (BCD) код и система счисления . Этопредвзятое представление . Код Excess-3 использовался, среди прочего, на некоторых старых компьютерах, а также в кассовых аппаратах и ​​портативных электронных калькуляторах 1970-х годов.

Представление [ править ]

Коды со смещением - это способ представления значений со сбалансированным количеством положительных и отрицательных чисел с использованием заранее заданного числа N в качестве значения смещения. Коды со смещением (и коды Грея ) - это невзвешенные коды. В коде превышения-3 числа представлены в виде десятичных цифр, и каждая цифра представлена ​​четырьмя битами как цифровое значение плюс 3 («избыточная» сумма):

  • Наименьшее двоичное число представляет наименьшее значение ( 0 - превышение ).
  • Наибольшее двоичное число представляет наибольшее значение ( 2 N +1 - превышение - 1 ).

Чтобы закодировать такое число, как 127, нужно просто кодировать каждую из десятичных цифр, как указано выше, давая (0100, 0101, 1010).

В арифметике с превышением-3 используются алгоритмы, отличные от обычных беспристрастных двоично-десятичных или двоичных позиционных чисел. После сложения двух дополнительных трех цифр исходная сумма будет равна шести разрядам. Например, после сложения 1 (0100 сверх-3) и 2 (0101 сверх-3) сумма будет выглядеть как 6 (1001 сверх-3) вместо 3 (0110 сверх-3). Чтобы исправить эту проблему, после добавления двух цифр необходимо удалить дополнительное смещение путем вычитания двоичного 0011 (десятичное 3 в несмещенном двоичном формате), если результирующая цифра меньше десятичного 10, или вычитания двоичного 1101 (десятичного 13 в несмещенном двоичном формате). двоичный), если произошло переполнение (перенос). (В 4-битном двоичном формате вычитание двоичного 1101 эквивалентно сложению 0011 и наоборот.)

Мотивация [ править ]

Основное преимущество кодирования с избытком-3 перед кодированием без смещения состоит в том, что десятичное число может быть дополнено девятками [1] (для вычитания) так же легко, как двоичное число может быть дополнено единицами : просто путем инвертирования всех битов. [1] Также, когда сумма двух дополнительных трех цифр больше 9, бит переноса 4-битного сумматора будет установлен в высокий уровень. Это работает, потому что после сложения двух цифр "лишнее" значение 6 дает сумму. Поскольку 4-битное целое число может содержать только значения от 0 до 15, превышение 6 означает, что любая сумма, превышающая 9, будет переполняться (производить перенос).

Еще одно преимущество состоит в том, что коды 0000 и 1111 не используются ни для каких цифр. Эти коды могут вызвать неисправность в памяти или основной линии передачи. Также сложнее записать нулевой шаблон на магнитный носитель. [1] [14] [11]

Пример [ править ]

Пример преобразователя BCD 8-4-2-1 в избыток-3 в VHDL :

сущность  bcd8421xs3  - это  порт  (  a  :  в  std_logic ;  b  :  в  std_logic ;  c  :  в  std_logic ;  d  :  в  std_logic ; an  :  buffer  std_logic ;  bn  :  буфер  std_logic ;  сп  :  буфер  std_logic ;  dn  :  буфер  std_logic ; ш  :  из  std_logic ;  х  :  из  std_logic ;  у  :  из  std_logic ;  z  :  out  std_logic  ); конечный  объект  bcd8421xs3 ;архитектура  потоков данных  из  bcd8421xs3  является начать  <= не ; bn <= не b ; сп <= не с ; dn <= не d ;                w  <=  ( an  и  b  и  d  )  или  ( a  и  bn  и  cn )  или  ( an  и  b  и  c  и  dn );  x  <=  ( an  и  bn  и  d  )  или  ( an  и  bn  и  c  и  dn )  или  ( an  и  b  и  cn  и  dn )  или ( И млрд и сп и д ); y <= ( an и cn и dn ) или ( an и c и d ) или ( a и bn и cn и dn ); z <= ( an и dn ) или ( a и bn и cn и dn );                                         конечная  архитектура  потока данных ;  - из bcd8421xs3

Расширения [ править ]

  • Расширение кода 3 из 6: Код избыточности 3 иногда также используется для передачи данных, а затем часто расширяется до 6-битного кода согласно CCITT GT 43 No. 1, где установлены 3 из 6 битов. [13] [1]
  • Расширение кода 4 из 8: В качестве альтернативы коду приемопередатчика IBM [15] (который представляет собой код 4 из 8 с расстоянием Хэмминга 2) [1] также можно определить код 4 из 8. Расширение кода -8, превышающее -3, достигающее расстояния Хэмминга 4, если должны передаваться только десятичные цифры. [1]

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

  • Смещение двоичное , избыток- N , смещенное представление
  • Превышение-128
  • Код избыточного Грея
  • Сдвинутый код Грея
  • Код Грея
  • m-of-n код
  • Код Айкен

Ссылки [ править ]

  1. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai Steinbuch, Karl W. , ed. (1962). Написано в Карлсруэ, Германия. Taschenbuch der Nachrichtenverarbeitung (на немецком языке) (1-е изд.). Берлин / Геттинген / Нью-Йорк: Springer-Verlag OHG . С. 71–73, 1081–1082. LCCN  62-14511 .
  2. ^ a b Steinbuch, Карл В .; Вебер, Вольфганг; Heinemann, Traute, eds. (1974) [1967]. Taschenbuch der Informatik - Band II - Struktur und Programmierung von EDV-Systemen . Taschenbuch der Nachrichtenverarbeitung (на немецком языке). 2 (3-е изд.). Берлин, Германия: Springer Verlag . С. 98–100. ISBN 3-540-06241-6. LCCN  73-80607 .
  3. ^ Ричардс, Ричард Колер (1955). Арифметические операции в цифровых компьютерах . Нью-Йорк, США: ван Ностранд . п. 182.
  4. ^ Каутц, Уильям Х. (июнь 1954 г.). «Оптимизированное кодирование данных для цифровых компьютеров» . Протокол Конвенции IRE 1954 г., Национальная конвенция, Часть 4: Электронные компьютеры и информационные технологии . Стэнфордский исследовательский институт, Стэнфорд, Калифорния, США: Институт радиоинженеров, Inc. 2 : 47–57. Сессия 19: Теория информации III - Скорость и вычисления . Проверено 22 мая 2020 . (11 страниц)
  5. ^ Шмид, Герман (1974). Десятичные вычисления (1-е изд.). Бингемтон, Нью-Йорк, США: John Wiley & Sons, Inc. стр. 11 . ISBN 0-471-76180-X. Проверено 3 января 2016 .
  6. ^ Шмид, Герман (1983) [1974]. Десятичные вычисления (1 (переиздание) изд.). Малабар, Флорида, США: Издательство Роберта Кригера. п. 11. ISBN 0-89874-318-4. Проверено 3 января 2016 .(NB. По крайней мере, некоторые партии этого переизданного издания были опечатками с дефектными страницами 115–146.)
  7. ^ Stibitz, Джордж Роберт ; Ларриве, Жюль А. (1957). Написано в Андерхилле, Вермонт, США. Математика и компьютеры (1-е изд.). Нью-Йорк, США / Торонто, Канада / Лондон, Великобритания: McGraw-Hill Book Company, Inc. стр. 105. LCCN 56-10331 .  (10 + 228 стр.)
  8. ^ Доктер, Фолкерт; Штайнхауэр, Юрген (18.06.1973). Цифровая электроника . Техническая библиотека Philips (PTL) / Macmillan Education (Перепечатка 1-го английского издания). Эйндховен, Нидерланды: Macmillan Press Ltd. / Gloeilampenfabrieken NV Philips . С. 42, 44. DOI : 10.1007 / 978-1-349-01417-0 . ISBN 978-1-349-01419-4. SBN 333-13360-9. Проверено 1 июля 2018 . (270 страниц) (NB. Это основано на переводе тома I двухтомного немецкого издания.)
  9. ^ Доктер, Фолкерт; Штайнхауэр, Юрген (1975) [1969]. Digitale Elektronik in der Meßtechnik und Datenverarbeitung: Theoretische Grundlagen und Schaltungstechnik . Philips Fachbücher (на немецком языке). I (исправленное и дополненное 5-е изд.). Гамбург, Германия: Deutsche Philips GmbH . стр. 48, 51, 53, 58, 61, 73. ISBN 3-87145-272-6. (xii + 327 + 3 страницы) (NB. Немецкое издание тома I было опубликовано в 1969, 1971, два выпуска в 1972 и 1975 годах. Том II был опубликован в 1970, 1972, 1973 и 1975 годах).
  10. ^ Stibitz, Джордж Роберт (1954-02-09) [1941-04-19]. «Комплексный компьютер» . Патент US2668661A . Проверено 24 мая 2020 . [1] (102 страницы)
  11. ^ a b Митке, Детлеф (2017) [2015]. "Binäre Codices" . Informations- und Kommunikationstechnik (на немецком языке). Берлин, Германия. Exzeß-3-Code mit Additions- und Subtraktionsverfahren. Архивировано 25 апреля 2017 года . Проверено 25 апреля 2017 .
  12. ^ Ричи, Дэвид (1986). Пионеры компьютеров . Нью-Йорк, США: Саймон и Шустер . п. 35 . ISBN 067152397X.
  13. ^ a b Международный консультативный комитет по телефонике и телеграфу (CCITT), Groupe de Travail 43 (1959-06-03). Вклад №1 . CCITT, GT 43 № 1.
  14. ^ Баше, Чарльз Дж .; Джексон, Питер Уорд; Mussell, Howard A .; Вингер, Уэйн Дэвид (январь 1956 г.). «Дизайн системы IBM Type 702». Труды Американского института инженеров-электриков, Часть I: Связь и электроника . 74 (6): 695–704. DOI : 10.1109 / TCE.1956.6372444 . S2CID 51666209 . Документ № 55-719. 
  15. ^ IBM (июль 1957 г.). 65 Приемопередатчик данных / 66 Приемник данных для печати .