36-битные вычисления
Эта статья нуждается в дополнительных цитатах для проверки . ( октябрь 2009 г. ) |
Разрядность архитектуры компьютера |
---|
Кусочек |
Приложение |
с плавающей запятой Двоичная точность |
с плавающей запятой Десятичная точность |
В компьютерной архитектуре 36 -битные целые числа , адреса памяти или другие единицы данных — это те, которые имеют ширину 36 бит (шесть шестибитных символов). Кроме того, архитектуры 36-битного центрального процессора (ЦП) и арифметико-логического устройства (АЛУ) основаны на регистрах , адресных шинах или шинах данных такого размера.36-битные компьютеры были популярны в раннюю эпоху мэйнфреймов , с 1950-х по начало 1970-х годов.
Начиная с 1960-х годов, но особенно с 1970-х годов, внедрение 7-битного ASCII и 8-битного EBCDIC привело к переходу на машины, использующие 8-битные байты, с размерами слов, кратными 8, особенно 32-битная система IBM. /360 Мейнфрейм и цифровое оборудование серии VAX и Data General MV Суперминикомпьютеры . К середине 1970-х годов преобразование было в основном завершено, и микропроцессоры за десятилетие быстро перешли от 8-битных к 16-битным, а затем к 32-битным. В этот период количество 36-битных машин быстро сократилось, и они предлагались в основном в целях обратной совместимости, на которых выполнялись устаревшие программы .
История
[ редактировать ]До появления компьютеров новейшим достижением точных научных и инженерных расчетов были десятизначные механические калькуляторы с электрическим приводом , такие как те, которые производились Фриденом , Маршаном и Монро . В этих калькуляторах был столбец клавиш для каждой цифры, и операторы были обучены использовать все пальцы при вводе чисел, поэтому, хотя некоторые специализированные калькуляторы имели больше столбцов, десять были практическим пределом. [ нужна ссылка ] Компьютеры, как новый конкурент, должны были соответствовать этой точности. Десятичные компьютеры, продававшиеся в ту эпоху, такие как IBM 650 и IBM 7070 , имели длину слова в десять цифр, как и ENIAC , один из самых ранних компьютеров.
Поэтому ранние двоичные компьютеры, нацеленные на тот же рынок, часто использовали 36 бит длину слова . Этого было достаточно, чтобы представлять положительные и отрицательные целые числа с точностью до десяти десятичных цифр (минимум 35 бит). Это также позволяло хранить шесть буквенно-цифровых символов, закодированных в шестибитный код символов . Компьютеры с 36-битными словами включали MIT Lincoln Laboratory TX-2 , IBM 701/704/709/7090/7094 , серии UNIVAC 1103 / 1103A / 1105 и 1100/2200 , General Electric GE-600 / Honeywell 6000 , Digital Equipment Corporation PDP-6 / PDP-10 (как используется в DECsystem-10 / DECSYSTEM-20 ) и серия Symbolics 3600 .
Меньшие машины, такие как PDP-1 / PDP-9 / PDP-15 , использовали 18-битные слова, поэтому двойное слово составляло 36 бит.
Эти компьютеры имели адреса длиной от 12 до 18 бит. Адреса относились к 36-битным словам, поэтому компьютеры были ограничены адресацией от 4096 до 262 144 слов (от 24 576 до 1 572 864 шестибитных символов). Старые 36-битные компьютеры также были ограничены аналогичным объемом физической памяти. Архитектуры, которые выжили, со временем эволюционировали и стали поддерживать более крупные виртуальные адресные пространства с использованием сегментации памяти или других механизмов.
Обычные упаковки персонажей включали:
- шесть 6-битных символов IBM BCD или Fielddata (повсеместно встречающиеся на ранних стадиях использования)
- шесть 6-битных символов ASCII, поддерживающих прописные буквы без ударения, цифры, пробелы и большинство знаков пунктуации ASCII. Он использовался в PDP-6 и PDP-10 под названием Sixbit .
- шесть символов DEC Radix-50, упакованных в 32 бита, плюс четыре запасных бита
- пять 7-битных символов и 1 неиспользуемый бит (обычное соглашение PDP-6/10, называемое пять-семь ASCII ) [1] [2]
- четыре 8-битных символа (7-битный ASCII плюс 1 запасной бит или 8-битный EBCDIC ), плюс четыре запасных бита
- четыре 9-битных символа [1] [2] ( конвенция Multics ).
Символы извлекались из слов либо с использованием операций сдвига машинного кода и маски, либо с помощью специального оборудования, поддерживающего 6-битные, 9-битные символы или символы переменной длины. Univac 1100/2200 использовал указатель части слова инструкции, поле «J», для доступа к символам. В GE-600 использовались специальные косвенные слова для доступа к 6- и 9-битным символам. PDP-6/10 имел специальные инструкции для доступа к байтовым полям произвольной длины .
Стандартный язык программирования C требует, чтобы размер char
тип данных должен быть не менее 8 бит, [3] и что все типы данных, кроме битовых полей, имеют размер, кратный размеру символа, [4] поэтому стандартные реализации C на 36-битных машинах обычно используют 9-битный char
s, хотя 12-, 18- или 36-битные версии также удовлетворяют требованиям стандарта. [5]
К тому времени, когда IBM представила System/360 с 32-битными полными словами, научные вычисления в значительной степени перешли к плавающей запятой , где форматы двойной точности обеспечивали точность более 10 цифр. 360-е также включали инструкции для десятичной арифметики переменной длины для коммерческих приложений, поэтому практика использования длины слова, равной степени двойки, быстро стала обычным явлением, хотя по крайней мере одна линейка 36-битных компьютерных систем все еще продается по состоянию на 2019 год. [update], серия Unisys продолжением UNIVAC 1100/2200 серии мэйнфреймов ClearPath Dorado, которая является .
CompuServe был запущен на 36-битных компьютерах PDP-10 в конце 1960-х годов. Он продолжал использовать оборудование, совместимое с PDP-10 и DECSYSTEM-10, и прекратил использование этой услуги в конце 2000-х годов.
Другое использование в электронике
[ редактировать ]LatticeECP3 FPGA от Lattice Semiconductor включают в себя срезы умножителя , которые можно настроить для поддержки умножения двух 36-битных чисел. [6] Блок DSP в FPGA Altera Stratix может выполнять 36-битное сложение и умножение. [7]
См. также
[ редактировать ]- Расширение физического адреса (PAE)
- PSE-36 (36-битное расширение размера страницы)
- UTF-9 и UTF-18
Ссылки
[ редактировать ]- ^ Jump up to: а б Маршалл Клайн. «Не могли бы вы еще раз повторить правила, касающиеся байтов, символов и символов?»
- ^ Jump up to: а б RFC 114 : «Протокол передачи файлов».
- ^ Спецификация ISO/IEC 9899:1999 . п. 20, § 5.2.4.2.1 . Проверено 24 июля 2023 г.
- ^ Спецификация ISO/IEC 9899:1999 . п. 37, § 6.2.6.1 (4) . Проверено 24 июля 2023 г.
- ^ Маршалл Клайн. «Часто задаваемые вопросы по C++: правила относительно байтов, символов и символов» .
- ^ «Руководство по использованию LatticeECP3 sysDSP» . Решетка полупроводника . Проверено 29 апреля 2019 г.
- ^ «Блоки цифровой обработки сигналов (DSP) в устройствах Stratix» . Altera +accessdate=27 декабря 2013 г.