Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Компьютер IBM 704 в NACA в 1957 году.
Компьютер IBM 704 с ленточными накопителями IBM 727 и ЭЛТ-дисплеем IBM 780 . (Изображение любезно предоставлено LLNL .)

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

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

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

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

Достопримечательности [ править ]

Языки программирования FORTRAN [5] и LISP [6] были впервые разработаны для 704, как и ассемблер SAP - Symbolic Assembly Program , позже распространенный SHARE как SHARE Assembly Program .

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

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

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

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

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

Регистры [ править ]

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

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

Форматы инструкций и данных [ править ]

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

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

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

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

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

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

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

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

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

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

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

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

  • GM-NAA ввод / вывод
  • Список вакуумных ламповых компьютеров

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

  1. ^ a b «Система обработки данных 704» . Архивы IBM - Экспонаты - Мэйнфреймы IBM - Справочная комната мэйнфреймов - Профили продуктов мэйнфреймов . IBM. 23 января 2003 . Проверено 18 августа 2016 .
  2. ^ "IBM Electronic Data-Processing Machines TYPE 704" (PDF) . IBM 704 Руководство по эксплуатации . Международная корпорация бизнес-машин. 1955 . Проверено 28 декабря 2017 .
  3. ^ Пеше, Mark (26 февраля 2015). «Ассемблеры когда-то были людьми: моя тетя сделала это для НАСА» . Программное обеспечение - Разработчик . Реестр . Проверено 18 августа 2016 .
  4. ^ «История IBM Timeline» . IBM. 23 января 2003 . Проверено 4 июля 2019 .
  5. ^ "История FORTRAN и FORTRAN II - Группа сохранения программного обеспечения" . www.softwarepreservation.org .
  6. ^ "Предыстория LISP - лето 1956 года по лето 1958 года" . www-formal.stanford.edu .
  7. ^ "Артур Кларк онлайн Биография" . Архивировано из оригинала на 11 декабря 1997 года.
  8. ^ «Bell Labs: Где« HAL »впервые заговорил (веб-сайт Bell Labs Speech Synthesis)» . Архивировано из оригинала на 1 апреля 2014 года.
  9. ^ Открытие канала документальный с интервью Эд и Вивиан Торп
  10. ^ Левингер, Джефф (10 февраля 1961). "Компьютер программ для инструктора по математике: Торп, 704 победить в блэкджеке" (PDF) . Тех . Кембридж, Массачусетс: Массачусетский технологический институт. 81 (1): 1.
  11. ^ Кайслер, Стивен Х. (ноябрь 2018 г.). Мэйнфреймы первого поколения: IBM 700 Series . Издательство Кембриджских ученых. п. 69. ISBN 978-1-5275-0650-3. Проверено 25 апреля 2019 года .
  12. ^ Принципы работы IBM 7094 (PDF) , IBM Systems Reference Library (пятое изд.), IBM, 1962, стр. 8, A22-6703-4
  13. Джон Сэвард. «От IBM 704 к IBM 7094» . Проверено 15 ноября 2009 .
  14. ^ Маккарти, Джон (1960). «Рекурсивные функции символьных выражений и их машинное вычисление, часть I» . Архивировано из оригинала на 2013-10-04 . Проверено 14 февраля 2009 .п. 28.
  15. ^ Вейк, Мартин Х. (март 1961 г.). «IBM 704» . ed-thelen.org . Третий обзор отечественных электронных цифровых вычислительных систем.
  16. ^ Вейк, Мартин Х. (декабрь 1955 г.). «ИБМ-704» . ed-thelen.org . Обзор отечественных электронных цифровых вычислительных систем.
  17. ^ "Архивы IBM: Регистратор выхода катодно-лучевой трубки 704" . 23 января 2003 . Проверено 10 декабря 2012 года .
  18. ^ "Архивы IBM: IBM 737 Магнитный блок хранения ядра" . 23 января 2003 . Проверено 10 декабря 2012 года .

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

  • Чарльз Дж. Баш, Лайл Р. Джонсон, Джон Х. Палмер, Эмерсон В. Пью, IBM's Early Computers (MIT Press, Кембридж, 1986)
  • Стивен Леви , Хакеры: Герои компьютерной революции

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

  • Устное историческое интервью с Джином Амдалом Институт Чарльза Бэббиджа , Университет Миннесоты, Миннеаполис. Амдал обсуждает свою роль в проектировании нескольких компьютеров для IBM, включая STRETCH , IBM 701 и IBM 704. Он обсуждает свою работу с Натаниэлем Рочестером и руководством IBM процессом проектирования компьютеров.