Программа символьной сборки (SAP) - это программа на ассемблере для компьютера IBM 704 . Она была написана Роем Наттом из United Aircraft Corporation и распространялась группой пользователей SHARE , начиная с 1956 года как Программа сборки Share . SAP пришла на смену более ранней программе под названием NYAP1 (New York Assembly Program 1), на которую она очень напоминала [1], и стала стандартным ассемблером для 704 пользователей. [2] Он «установил внешнюю форму языка ассемблера, который должен был стать моделью для всех его преемников и который сохраняется почти неизменным до наших дней». [3]
DARSIMCO , сокращение от Dartmouth Simplified Code , был простым языком программирования, написанным Джоном Кемени (который позже стал соавтором BASIC ) в 1956 году, который расширил простые математические операции в программу, которая затем будет выполняться в SAP.
Описание
SAP - двухпроходный ассемблер . Он способен работать на 704 с как минимум 4 КБ 36-битных слов в основной памяти. Эта конфигурация допускает до 1097 записей в таблице символов . Дополнительная основная память сверх 4 кВт может использоваться для дополнительных записей в таблице символов. [4]
Ввод и вывод для SAP осуществляются с помощью перфокарт или изображений карт на ленте. Ввод в фиксированном формате. [2]
Формат ввода
Столбцы карточек | Описание |
---|---|
1-6 | этикетка или бланк |
7 | пустой |
8-10 | код операции (3 символа) или пробел |
11 | пустой |
12-72 | поле переменных |
73-80 | не используется ассемблером. Может содержать идентификационную информацию и информацию о последовательности |
Выходной формат
Вывод состоит из абсолютных или перемещаемых перфокарт или изображений карт. Выходные данные представляют собой двоичные данные в двенадцати строках карты 12, 11 и 0–9. Каждая строка содержит два 36-битных слова в столбцах 1-36 и 37-72, обозначенных как левое (L) и правое (R) соответственно. Данные обычно нумеруются по строкам и позициям, например, столбцы с 1 по 36 строки 9 обозначены как 9L, столбцы с 37 по 72 той же строки - как 9R. Внутри слова биты обозначаются слева направо как S (знаковый бит) и 1-35, таким образом, позиция 13 бита левого слова в строке 6 обозначается 6L13.
Слово 9L каждой карты является контрольным словом, а 9R - дополнительной контрольной суммой . Управляющее слово содержит биты, указывающие, например, являются ли данные на карте абсолютными или перемещаемыми, присутствует ли контрольная сумма, абсолютное или номинальное расположение данных на этой карте, а также количество слов данных. содержится на этой карте. [5]
Рекомендации
- ^ Орчард-Хейс, Уильям. «Адаптивность кодов линейного программирования» (PDF) . Центр оборонной технической информации . Проверено 31 мая 2019 года .
- ^ а б Helwig, F .; и другие. "КОДИРОВКА ДЛЯ КОМПЬЮТЕРА MIT-IBM 704" (PDF) . bitsavers.org . Проверено 8 апреля 2018 года .
- ^ Падуя, Дэвид А. "CS321: I. Языки программирования" (PDF) . Исследовательская группа Polaris . Проверено 31 мая 2019 года .
- ^ Натт, Рой. «Объединенная авиастроительная корпорация SHARE Assembler» . Проверено 9 апреля 2018 года .
- ^ Зурлинден, Дональд Х. "РУКОВОДСТВО ПО МОДЕЛИ IBM-704" (PDF) . eScholarship.org . Национальная лаборатория Лоуренса Беркли . Проверено 31 мая 2019 года .