Десятичный компьютер

редактировать

Передняя панель IBM 650 с отображением десятичного двоичного кода

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

Содержание
  • 1 Ранние компьютеры
  • 2 Более поздние компьютеры
  • 3 Еще современные компьютеры
  • 4 Ссылки
  • 5 Дополнительная литература
Ранние компьютеры

Ранние компьютеры, которые были исключительно десятичными, включают ENIAC, IBM NORC, IBM 650, IBM 1620, IBM 7070. В этих машинах базовой единицей данных было десятичное число di. git, закодированный по одной из нескольких схем, включая двоично-десятичный (BCD), двухчетверный и код два из пяти. За исключением IBM 1620 и 1710, эти машины использовали адресацию слов. Когда в этих машинах использовались нечисловые символы, они кодировались как две десятичные цифры.

Другие ранние компьютеры были ориентированы на символы, предоставляя инструкции для выполнения арифметических операций над символьными строками десятичных чисел, используя двоично-десятичный код или превышение-3 (XS-3) для десятичных цифр. На этих машинах основным элементом данных был буквенно-цифровой символ , обычно закодированный шестью битами . UNIVAC I и UNIVAC II использовали адресацию слов с 12-символьными словами. Примеры IBM включают IBM 702, IBM 705, серию IBM 1400, IBM 7010 и IBM 7080.

Более поздние компьютеры

IBM System / 360, представленная в 1964 году для унификации линейки продуктов IBM, использовавшая посимвольную двоичную адресацию, а также включала инструкции для упакованной десятичной арифметики, а также двоичной целочисленной арифметики, и двоичные числа с плавающей запятой. Он использовал 8-битные символы и ввел кодировку EBCDIC, хотя также поддерживался ASCII. Burroughs B2500, представленный в 1966 году, также использовал 8-битные символы EBCDIC или ASCII и мог упаковывать две десятичные цифры на байт, но не обеспечивал двоичную арифметику, что делало его десятичной архитектурой.

Более современные компьютеры

Некоторые семейства микропроцессоров предлагают ограниченную поддержку десятичных чисел. Например, микропроцессоры семейства 80x86 предоставляют инструкции для преобразования однобайтовых чисел BCD (упакованных и распакованных) в двоичный формат до или после арифметических операций. Эти операции не были распространены на более широкие форматы и, следовательно, теперь медленнее, чем использование 32-битных или более широких «приемов» BCD для вычисления в BCD (см. [1] ). FPU x87 имеет инструкции для преобразования 10-байтовых (18 десятичных цифр) упакованных десятичных данных, хотя затем обрабатывает их как числа с плавающей запятой.

В Motorola 68000 есть инструкции для сложения и вычитания двоично-десятичного кода; как и 6502. В более поздних процессорах семейства 68000 эти инструкции были удалены, когда был определен набор инструкций Coldfire, и все мэйнфреймы IBM также обеспечивают аппаратную арифметику целых чисел BCD. Zilog Z80, Motorola 6800 и его производные вместе с другими 8-битными процессорами, а также семейство Intel x86 имеют специальные инструкции, которые поддерживают преобразование в и от BCD. Программное обеспечение портативного компьютера Psion Organizer I, поставляемое производителем, реализовало свои операции с плавающей запятой в программном обеспечении, полностью используя BCD. Все более поздние модели Psion использовали только двоичный код, а не BCD.

Десятичная арифметика становится все более распространенной; например, к стандарту 2008 IEEE 754r были добавлены три десятичных типа с двумя двоичными кодировками с 7-, 16- и 34-значными десятичными значащими значениями.

Процессор IBM Power6 и В IBM System z9 эти типы реализованы с использованием двоичного кодирования Densely Packed Decimal, первое - в аппаратном, а второе - в микрокоде.

Ссылки
Дополнительная литература
Последняя правка сделана 2021-05-17 10:48:54
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте