stringtranslate.com

Автокодер

Автокодер — это любой из группы ассемблеров ряда компьютеров IBM 1950-х и 1960-х годов. Первые автокодеры, по-видимому, были первыми ассемблерами, предоставившими возможности макросов . [1]

Терминология

И автокодер , и несвязанный с ним автокод , термин той же эпохи, используемый в Великобритании для языков более высокого уровня, происходят от фразы автоматическое кодирование . Обычно это относилось к программам, которые облегчали создание числовых кодов программ на машинном языке . [2] «Автокодирование» встречается время от времени и может относиться к любой системе программирования. В некоторых кругах слово «автокодер» может использоваться в общем для обозначения того, что сейчас называется макроассемблером. [3]

История

Первые автокодеры были выпущены в 1955 году для IBM 702 [4] и в 1956 году для почти совместимого IBM 705 . [5] Они были разработаны Роем Голдфингером, который ранее работал над ассемблером NYAP Нью-Йоркского университета (NYU). [6] [7] Эти машины представляли собой коммерческие машины с переменной длиной слова , как и многие компьютеры, для которых был выпущен автокодер.

Помимо 702 и 705, в конечном итоге появились автокодеры для IBM 1410 и 7010 , [8] [9] IBM 7030 (Stretch), 7070/7072/7074 , [10] [11] IBM 7080 , [12] и IBM 1400 серии . [13]

Автокодер, реализованный на IBM 1401

Система символического программирования [14] (SPS) — это ассемблер, предложенный, когда IBM первоначально объявила 1401 как компьютер, работающий только с перфокартами. У SPS была другая мнемоника и другой фиксированный формат ввода, чем у Autocoder. Ему не хватало функций Autocoder, и позже он обычно использовался только на машинах, в которых не было ленточных накопителей, то есть только с перфокартами. [15] [16]

Лист кодировки автокодера

1401 Autocoder [17] [18] является наиболее известным автокодером, несомненно, отчасти благодаря общему успеху этой серии машин. Автокодер был основным языком этого компьютера, а его возможности макросов облегчали использование системы управления вводом/выводом , что облегчало бремя программирования.[19] [20] [21] Автокодер также имел возможность обрабатывать код, написанный для SPS.

1401 был доступен в шести конфигурациях памяти с 1400, 2000, 4000, 8000, 12000 или 16000 шестибитных символов. Модель из 8000 символов была минимумом, необходимым для запуска полного приложения ассемблера Autocoder, включая IOCS. Однако ассемблер языкового подмножества был доступен для использования всего с 1400 позициями памяти. Загружаемый объектный файл на перфокартах или магнитной ленте можно было создать на модели на 8000 символов, которую затем можно было запустить на машине на 4000 символов. Ограниченное подмножество языков обрабатывало только перфокарты и требовало 4 прохода с промежуточными выводами перфокарт.

Влияние

Популярность Autocoder вдохновила других ассемблеров. «Easycoder» для Honeywell 200 , компьютера, похожего на 1401, напоминал Autocoder. Другие производители иногда создавали конкурирующие продукты, такие как NCR «National's Electronic Autocoder Technique» (NEAT). [22]

Университет штата Пенсильвания разработал компилятор «Dual Autocoder Fortran Translator» (DAFT) для IBM 7074 в 1960-х годах, который позволил чрезвычайно легко писать (в рамках одной программы) строки инструкций автокодера, свободно перемежающиеся строками кода Fortran. Это позволяло кодировать символьные машинные инструкции в программе на Фортране более высокого уровня, что было особенно полезно для оптимизации скорости внутренних циклов или для использования необычной архитектуры десятичных слов IBM 7074. [ нужна цитата ]

Bell Laboratories разработала программу под названием «Символический переводчик периферийного оборудования» (PEST), которая представляла собой кросс-ассемблер 1401, работавший на 709 / 709x и принимающий подмножество 1401 Autocoder. [16] [23]

Копия исходных программ для SPS-1, SPS-2 и Autocoder была подарена Институту Чарльза Бэббиджа Университета Миннесоты в 1985 году Гэри Мокотоффом , автором SPS и соавтором Autocoder. [24]

Примечания

  1. ^ Соломон 1993, с. 8.
  2. ^ Хоппер 1955.
  3. ^ Пример см. Аллен 1981, с. 540.
  4. ^ Каталог записей авторских прав. Третья серия: 1956. Бюро авторских прав, Библиотека Конгресса. 1957. с. 305 . Проверено 23 августа 2019 г.
  5. ^ Система автокодера 705 - информационное руководство (PDF) , Справочная библиотека систем IBM (второе издание), IBM Corporation, февраль 1957 г., 22-6726-1
  6. ^ Голдфингер 1956.
  7. Энциклопедия компьютерных языков. Архивировано 16 сентября 2007 г., в Wayback Machine.
  8. ^ IBM 1410 Autocoder (PDF) , Справочная библиотека систем IBM (второе изд.), IBM Corporation, февраль 1964 г., C28-0309-1
  9. ^ Операционная система IBM 1410/700 (1410-PR-155) - Автокодер - 1410-AU-968 (PDF) , Справочная библиотека систем IBM (Третье изд.), IBM Corporation, ноябрь 1964 г., C28-0336-2
  10. ^ Справочное руководство - Четырехленточный автокодер IBM 7070/7074 (PDF) , Справочная библиотека систем IBM (второе изд.), IBM Corporation, апрель 1961 г., C28-6102-1
  11. ^ Справочное руководство - Системы программирования серии IBM 7070 - Автокодер (PDF) , Справочная библиотека систем IBM (первое издание), IBM Corporation, 1961, C28-6121-0
  12. ^ Справочное руководство - Системы программирования IBM 7080 - Процессор 7080: язык автокодера (PDF) , Справочная библиотека систем IBM (первое издание), IBM Corporation, 1962, C28-6263
  13. ^ 7010: Вейк 1964, с. 0160; 7030: «IBM Stretch (также известная как система обработки данных IBM 7030)», «Компиляторы и компьютеры: партнеры по производительности» (PDF); 7070: Том Ван Флек, «IBM 7070», третий обзор отечественных электронных цифровых вычислительных систем., Мартин Х. Вейк, «IBM 7070», Лаборатории баллистических исследований, Абердинский полигон, Мэриленд; 7080: [1]; Серия 1400: [2], Автокодер 1410 (PDF).
  14. ^ СИСТЕМА СИМВОЛИЧНОГО ПРОГРАММИРОВАНИЯ IBM 1401: ПРЕДВАРИТЕЛЬНЫЕ СПЕЦИФИКАЦИИ (PDF) , IBM, 1960, J28-200-1
  15. ^ Телен, Эд. «ИБМ-1401» . Проверено 5 марта 2020 г.
  16. ^ Аб Ван Флек, Том. «1401-е, которые я знал». multicians.org . Проверено 05 марта 2020 г.
  17. ^ Автокодер (на ленте) Спецификации языка и рабочие процедуры Программа IBM 1401 и 1460 1401-AU-037 (PDF) , Справочная библиотека систем IBM (первое издание), IBM Corporation, ноябрь 1964 г., C24-3319-0
  18. ^ Спецификации языка автокодера (на диске) IBM 1401, 1440 и 1460 (PDF) , Справочная библиотека систем IBM (Третье изд.), IBM Corporation, апрель 1966 г., C24-3258-2
  19. ^ Корпорация IBM. Исполнительное руководство по системе обработки данных IBM 1440 (PDF) . Проверено 8 марта 2020 г.
  20. ^ Соломон 1993, с. 8
  21. ^ "Энциклопедия компьютерных языков". Архивировано из оригинала 17 сентября 2007 г. Проверено 18 марта 2007 г..
  22. ^ Вейк 1964, с. 0202.
  23. ^ Корпорация IBM (1962). Каталог программ для IBM Data Processing Systems Индекс KWIC (PDF) . п. 248 . Проверено 05 марта 2020 г.
  24. ^ Гэри Мокотофф Коллекция списков программ IBM 1401, 1959-1961 гг.

Рекомендации

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