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

RADIX 50 [1] [2] или RAD50 [2] (также называемый RADIX50 , [3] RADIX-50 [4] или RAD-50 ) - это кодировка символов только в верхнем регистре, созданная Digital Equipment Corporation (DEC) для использования на их компьютерах DECsystem , PDP и VAX .

40-символьный репертуар RADIX 50 (050 в восьмеричной системе ) может закодировать шесть символов плюс четыре дополнительных бита в одно 36-битное машинное слово ( PDP-6 , PDP-10 / DECsystem-10, DECSYSTEM-20 ), три символа плюс два дополнительных бита. в одно 18-битное слово ( PDP-9 , [1] PDP-15 ), [5] или три символа в одно 16-битное слово ( PDP-11 , VAX). [2]

Фактическое кодирование в 36-битной и 16-битной системах различается.

36-битные системы [ править ]

В 36-битных системах DEC RADIX 50 обычно использовался в таблицах символов для ассемблеров или компиляторов, которые поддерживали шестизначные имена символов из 40-символьного алфавита. Осталось четыре бита для кодирования свойств символа.

Для его сходства с SQUOZE схемы кодирования , используемой в IBM «s SHARE Операционной системе для представления символов объектного кода, вариант DEC был также иногда называют декабрь Squoze , [6] Тем не менее, IBM SQUOZE упакован шесть символов из 50 символов алфавита плюс два дополнительными биты флага в одно 36-битное слово. [5]

RADIX 50 обычно не использовался в 36-битных системах для кодирования обычных символьных строк; Имена файлов обычно кодировались шестью шестибитными символами, а полные строки ASCII - пятью семибитными символами и одним неиспользуемым битом на 36-битное слово.

18-битные системы [ править ]

RADIX 50 (также называемый форматом Radix 50 8 [1] ) использовался в 18-битных компьютерах Digital PDP-9 и PDP-15 для хранения символов в таблицах символов, оставляя два дополнительных бита на 18-битное слово («биты классификации символов» ). [1]

16-битные системы [ править ]

Некоторые строки в 16-битных системах DEC были закодированы как 8-битные байты, в то время как другие использовали RADIX 50 (тогда также называемый MOD40 ). [2] [7]

В RADIX 50 строки кодировались последовательными словами по мере необходимости, причем первый символ в каждом слове располагался в наиболее значимой позиции.

Например, при использовании кодировки PDP-11 строка «ABCDEF» со значениями символов 1, 2, 3, 4, 5 и 6 будет закодирована как слово, содержащее значение 1 × 40 2  + 2 × 40 1  + 3 × 40 0 =1683 , за которым следует второе слово, содержащее значение 4 × 40 2  + 5 × 40 1  + 6 × 40 0 =6606 . Таким образом, 16-битные слова кодируют значения от 0 (три пробела) до63 999 («999»). Когда в слове было меньше трех символов, последнее слово в строке дополнялось конечными пробелами. [2]

Было несколько незначительных вариаций этой кодировки. Например, операционная система RT-11 считала символ, соответствующий значению 011101( %), неопределенным, [2], и некоторые служебные программы использовали это значение для представления *символа вместо этого.

Использование RADIX 50 явилось источником соглашений о размере файлов, используемых в операционных системах PDP-11 Digital Equipment Corporation . Используя кодировку RADIX 50, шесть символов имени файла могут быть сохранены в двух 16-битных словах, а еще три символа расширения (типа файла) могут быть сохранены в третьем 16-битном слове. Точка, разделяющая имя файла и его расширение, подразумевалась (т. Е. Не сохранялась и всегда предполагалась присутствующей). RADIX 50 также широко использовался в таблицах символов различных языков программирования PDP-11 .

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

  • Упакованный BCD
  • Кодирование в герцах
  • Кодировка Чен – Хо
  • Плотно упакованная десятичная дробь (DPD)
  • Шестибитный символьный код
  • База 40
  • Базовая конверсия
  • Разделить восьмеричный

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

  1. ^ a b c d «Приложение 1». PDP-9 Utility Programs - Advanced Software System - Справочное руководство программиста (PDF) . Мейнард, Массачусетс, США: Digital Equipment Corporation . 1968. Заказ № DEC-9A-GUAB-D. Архивировано (PDF) из оригинала 2020-06-04 . Проверено 4 июня 2020 .
  2. ^ a b c d e f g "8.10 .RAD50". Ассемблер PAL-11R - Руководство программиста - Язык ассемблера программ и перемещаемый ассемблер для дисковой операционной системы (2-е исправленное печатное издание). Мейнард, Массачусетс, США: Digital Equipment Corporation . Май 1971 года [февраль 1971 года]. п. 8-8. DEC-11-ASDB-D . Проверено 18 июня 2020 . п. 8-8: […] PDP-11системные программы часто обрабатывают символы в специально закодированной форме, называемой RADIX 50 (эту форму иногда называют MOD40). Эта форма позволяет упаковывать 3 символа в 16 бит; поэтому любой шестизначный символ может содержаться в двух словах. Единственный операнд имеет форму / CCC /, где косая черта (разделитель) может быть любым печатаемым символом, кроме = и:. Разделители заключают в себя символы, которые нужно преобразовать, это могут быть символы от A до Z, от 0 до 9, доллар ($), точка (.) И пробел (). Если имеется менее 3 символов, они считаются выровненными по левому краю и предполагаются конечные пробелы. […] Алгоритм упаковки следующий: […] A. Каждый символ переводится в его эквивалент RADIX 50, как указано в следующей таблице: Символ - Эквивалент RADIX 50 (восьмеричный): (пробел) - 0, A – Z - 1–32, $ - 33,. - 34, 0–9 - 36–47.Обратите внимание, что для кода 35 может быть определен другой символ. […] B. Эквиваленты RADIX 50 для символов с 1 по 3 (C1, C2, C3) объединяются следующим образом: РЕЗУЛЬТАТ = ((C1 * 50) + C2) * 50 + C3 […] [1]
  3. ^ a b Дурда IV., Франк (2004). «Справочник по коду символов RADIX50» . Архивировано из оригинала на 2005-03-31 . Проверено 31 марта 2005 .
  4. ^ a b «Приложение B.3: Константы и набор символов Radix-50». Справочное руководство по языку Compaq Fortran 77 . Compaq Computer Corporation . 1999. Архивировано из оригинала на 2012-10-14 . Проверено 14 октября 2012 .
  5. ^ a b Джонс, Дуглас В. (2018). «Лекция 7, Коды объектов, загрузчики и компоновщики - Заключительные шаги на пути к машинному коду» . Операционные системы, весна 2018 . Часть коллекции операционных систем CS: 3620. Департамент компьютерных наук Университета Айовы . Архивировано 06.06.2020 . Проверено 6 июня 2020 .
  6. ^ Мюррелл, Stephen J. (2005). «Коды символов DEC / PDP» . rabbit.eng.miami.edu . Университет Майами . Таблица символов DEC Squoze. Архивировано 19 июня 2020 года . Проверено 19 июня 2020 .
  7. ^ PDP-11 Получение DOS в эфире (1-е изд.). Мейнард, Массачусетс, США: Digital Equipment Corporation . Август 1971 г. DEC-11-SYDC-D . Проверено 18 июня 2020 . [2]

Дальнейшее чтение [ править ]

  • Уильямс, Эл (22 ноября 2016 г.). «Скройте свои данные» . Hackaday . Архивировано 06.06.2020 . Проверено 6 июня 2020 .

Внешние ссылки [ править ]

  • https://github.com/turbo/ptt-its/blob/master/doc/info/midas.25