stringtranslate.com

Автокодер

Autocoder — это группа ассемблеров для ряда компьютеров IBM 1950-х и 1960-х годов. Первые Autocoders, по-видимому, были самыми ранними ассемблерами, предоставляющими возможность макросов . [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]

Лист кодирования Autocoder

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

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

Влияние

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

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

Bell Laboratories разработала программу под названием «Peripheral Equipment Symbolic Translator» (PEST), которая представляла собой кросс-ассемблёр 1401, работавший на 709 / 709x и принимавший подмножество автокодера 1401. [16] [23]

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

Примечания

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

Ссылки

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