IBM 704

редактировать
Компьютер IBM 704 в NACA в 1957 году. Компьютер IBM 704 с ленточными накопителями IBM 727 и ЭЛТ-дисплеем IBM 780 IBM 704 в Национальном музее науки и технологий Леонардо да Винчи, Милан

IBM 704, который был представлен IBM в 1954 году, является первым серийно компьютер с плавающей точкой арифметической аппаратных средств. Руководство по эксплуатации IBM 704 гласит:

Электронная машина обработки данных типа 704 - это крупномасштабный высокоскоростной электронный вычислитель, управляемый внутренней программой с одним адресом.

Таким образом, 704-й в то время считался «практически единственным компьютером, который мог обрабатывать сложные математические вычисления». 704 был значительным улучшением по сравнению с более ранним IBM 701 с точки зрения архитектуры и реализации. Как и 701, 704 использует ламповую логическую схему и 36-битные двоичные слова. Отличия от 701 включают использование основной памяти вместо трубок Вильямса, арифметические инструкции с плавающей запятой, 15-битную адресацию и добавление трех индексных регистров. Для поддержки этих новых функций инструкции были расширены, чтобы использовать полное 36-битное слово. Новый набор команд, несовместимый с 701, стал основой для подкласса «научной архитектуры» компьютеров серии IBM 700/7000.

704 может выполнять до 12 000 операций сложения с плавающей запятой в секунду. В период с 1955 по 1960 год IBM произвела 123 системы типа 704.

СОДЕРЖАНИЕ

  • 1 Достопримечательности
  • 2 регистра
  • 3 Инструкции и форматы данных
  • 4 Память и периферия
  • 5 Надежность
  • 6 См. Также
  • 7 ссылки
  • 8 Дальнейшее чтение
  • 9 Внешние ссылки

Ориентирники

Языки программирования FORTRAN и LISP были впервые разработаны для 704, как и ассемблер SAP - программа символьной сборки, позже распространенная компанией SHARE как программа сборки SHARE.

MUSIC, первая компьютерная музыкальная программа, была разработана Максом Мэтьюзом на IBM 704.

В 1962 году физик Джон Ларри Келли-младший создал один из самых известных моментов в истории Bell Labs, используя компьютер IBM 704 для синтеза речи. Вокодер синтезатора диктофона Келли воссоздал песню Daisy Bell с музыкальным сопровождением Макса Мэтьюза. Артур Кларк случайно навещал друга и коллегу Джона Пирса в лаборатории Bell Labs в Мюррей-Хилле во время демонстрации синтеза речи, и Кларк был настолько впечатлен, что шесть лет спустя он использовал его в кульминационной сцене своего романа и сценария для 2001: Космическая одиссея, где компьютер HAL 9000 поет ту же песню.

Эдвард О. Торп, преподаватель математики в Массачусетском технологическом институте, использовал IBM 704 в качестве исследовательского инструмента для исследования вероятностей выигрыша при разработке своей теории игры в блэкджек. Он использовал FORTRAN, чтобы сформулировать уравнения своей исследовательской модели.

Осенью 1957 года IBM 704 в вычислительном центре Массачусетского технологического института использовалась в качестве официального трекера для Смитсоновской астрофизической обсерватории Operation Moonwatch. IBM предоставила четырех штатных ученых, чтобы помочь ученым и математикам Смитсоновской астрофизической обсерватории в вычислении орбит спутников: доктору  Джампьеро. Россони, доктор Джон Гринштадт, Томас Эппл и Ричард Хэтч.

Лос - Аламос Научная лаборатория (LASL) разработала ранний монитор с именем SLAM, чтобы включить пакетную обработку.

Регистры

Модуль схемы электронных ламп IBM 704

IBM 704 имеет 38-битный аккумулятор, 36-битный регистр частного множителя и три 15-битных индексных регистра. Содержимое индексных регистров вычитается из базового адреса, поэтому индексные регистры также называются «регистрами декремента». Все три индексных регистра могут участвовать в инструкции: 3-битное поле тега в инструкции - это битовая карта, определяющая, какой из регистров участвует в операции. Однако, если выбрано более одного индексного регистра, то их содержимое объединяется по ИЛИ - а не складывается - до того, как произойдет декремент. Это поведение сохранялось в более поздних машинах с научной архитектурой (таких как IBM 709 и IBM 7090 ) до IBM 7094. IBM 7094, представленный в 1962 году, увеличил количество индексных регистров до семи и выбирал только один за раз; поведение «или» остается доступным в режиме совместимости IBM 7094.

Инструкции и форматы данных

Существует два формата инструкций, называемых «Тип A» и «Тип B». Большинство инструкций были типа B.

Инструкции типа A имеют последовательно 3-битный префикс (код команды), 15-битовое поле декремента, 3-битное поле тега и 15-битное поле адреса. Существуют операции условного перехода на основе значений в индексных регистрах, указанных в поле тега. Некоторые инструкции также вычитают поле декремента из содержимого индексных регистров. Реализация требует, чтобы вторые 2 бита кода инструкции были ненулевыми, что дает в общей сложности шесть возможных инструкций типа A. Один (STR, двоичный код инструкции 101) не был реализован до IBM 709.

Инструкции типа B имеют последовательно 12-битный код команды (с битами 2 и 3, установленными в 0, чтобы отличать их от команд типа A), 2-битное поле флага, 4 неиспользуемых бита, 3-битное поле тега, и 15-битное адресное поле.

  • Числа с фиксированной точкой хранятся в двоичном формате знак / величина.
  • Числа с плавающей запятой одинарной точности имеют знак величины, 8-битную экспоненту с избытком 128 и 27-битную величину.
  • Буквенно-цифровые символы обычно представляют собой 6-битные двоично - десятичные символы, упакованные по шесть штук в слово.

Набор инструкций неявно подразделяет формат данных на те же поля, что и инструкции типа A: префикс, декремент, тег и адрес. Существуют инструкции для изменения каждого из этих полей в слове данных без изменения остатка слова, хотя инструкция Store Tag не была реализована на IBM 704.

Исходная реализация Lisp использует поля адреса и декремента для хранения заголовка и хвоста связанного списка соответственно. В честь этих полей были названы примитивные функции car («содержимое адресной части регистра») и cdr («содержимое декрементной части регистра»).

Память и периферия

В 704 включены элементы управления для: одного устройства чтения перфокарт 711, одного буквенного принтера 716, одного устройства записи перфокарт 721, пяти устройств с магнитной лентой 727 и одного блока управления лентой 753, одного устройства считывания и записи магнитных барабанов 733 и одного магнитного сердечника 737 Единица хранения. Общая масса составляла около 19 466 фунтов (9,7 коротких тонн; 8,8 т).

Сам 704 поставляется с консолью управления, имеющей 36 различных переключателей или кнопок управления и 36 переключателей ввода данных, по одному на каждый бит в регистре. Консоль управления по существу позволяет только устанавливать двоичные значения регистров с помощью переключателей и видеть двоичное состояние регистров, отображаемое в виде множества маленьких неоновых трубок, которые выглядят очень похоже на современные светодиоды. При взаимодействии человека с компьютером программы изначально должны вводиться на перфокартах, а не на консоли, а вывод, доступный для чтения человеком, направляется на принтер.

Также был доступен регистратор вывода на катодно-лучевой трубке IBM 740, представляющий собой 21-дюймовый векторный дисплей с очень длительным временем сохранения люминофора, равным 20 секундам, для просмотра человеком, вместе с 7-дюймовым дисплеем, принимающим тот же сигнал, что и больший дисплей, но с быстро затухающим люминофором, предназначенным для фотографирования с помощью прикрепленной камеры.

Запоминающее устройство с магнитным сердечником 737 служит ОЗУ и содержит 4096 36-битных слов, что эквивалентно 18 432 байтам. 727 магнитных лент хранят более 5 миллионов 6-битных символов на каждой катушке.

Надежность

IBM 704 - это машина с электронными лампами, поэтому по сегодняшним меркам она имела очень низкую надежность. В среднем машина выходила из строя примерно каждые 8 ​​часов, что ограничивало размер программы, которую первые компиляторы Фортрана могли успешно преобразовать, потому что машина выходила из строя до успешной компиляции большой программы.

Смотрите также

использованная литература

дальнейшее чтение

внешние ссылки

Последняя правка сделана 2023-04-21 08:14:11
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте