WikiDer > КОМПАС - Википедия

COMPASS - Wikipedia

КОМПАС, КОМПвосстановить ЖОПАEmbler,[1] относится к семейству макросов языки ассемблера на Корпорация Control Dataс 3000 серии, а на 60-битной CDC 6000 серии, 7600 и Cyber ​​70 и 170 серий мэйнфреймы. Хотя архитектуры сильно различаются, средства макро- и условной сборки похожи.

КОМПАС для 60-битных машин

Есть два ароматы КОМПАСА на 60-битных машинах:

КОМПАС - классический двухпроходный ассемблер с макрос и условные функции сборки, и генерирует полный список, показывающий как исходный код сборки, так и сгенерированный Машинный кодвосьмеричный). CDC операционные системы были написаны почти полностью на ассемблере COMPASS.

Аппаратное обеспечение центрального процессора (CP или CPU) поддерживает 24 рабочих места. регистрыс именами от A0 до A7, от X0 до X7 и от B0 до B7. Регистры с X0 по X7 имеют длину 60 бит и используются для хранения данных, в то время как регистры от B0 до B7 имеют длину 18 бит, и их основная цель - хранить либо адреса или использоваться как регистры индексации, за исключением того, что B0 всегда равен нулю. По соглашению о программировании B1 (или B7) часто содержит положительную единицу.

А или регистры адресов также имеют длину 18 бит. Каждый регистр A соединяется с соответствующим регистром X. Каждый раз, когда адрес устанавливается в любой из регистров от A1 до A5, данные в этой ячейке памяти (адресе) загружаются в соответствующий регистр X. Аналогичным образом, установка адреса в один из регистров A6 или A7 сохраняет данные, хранящиеся в соответствующем регистре X6 или X7, в этой ячейке памяти. Однако A0 можно использовать для хранения любого адреса, не влияя на содержимое регистра X0.

CP инструкции написаны в особенно удобной для пользователя форме: «SA1 A0 + B1» означает установить адресный регистр A1 на сумму адресного регистра A0 и индексного регистра B1. Затем аппаратное обеспечение инициирует загрузку памяти из вычисленного адреса в регистр X1.

Инструкции периферийного процессора (PP или PPU) полностью отличаются от инструкций CPU. Аппаратное обеспечение периферийного процессора проще; он имеет 18-битный A (аккумулятор регистр, 12-битный регистр адреса программы, 12-битный регистр Q (не видимый для программиста) и 22-битный регистр R (используемый для выполнения перемещения адреса во время чтения и записи команд из центральной памяти на Cyber ​​180 системы). Для сборки программ периферийного процессора не требовалось специальной проверки задания, но для выполнения такие программы требовалось установить в операционную систему с помощью специальных команд редактирования системы.

Пример кода

Этот Пример кода COMPASS отображает календарь года, заданного как параметр на Терминал. Если параметр не указан, отображается календарь текущего года.

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

  • «Программирование на языке ассемблера для управляющих данных серии 6000» Ральфа Гришмана, Algorithmics Press, 1972.[2]

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

  1. ^ «Компас - FOLDOC - Компьютерный словарь».
  2. ^ цитируется в http://cholla.mmto.org/computers/firstcdc.html

внешняя ссылка