Сообщение от
darkstar
Что это за информация? И каково её практическое использование?
Это просто байт данных, являющийся частью кода команды. Поскольку байт имеет 256 возможных значений - есть по 256 вариантов кода команд EMT и TRAP с различными младшими байтами.
Обычно младший байт команды EMT/TRAP используется как номер вызываемой подпрограммы, а извлекается он из кода при помощи сохранённого в стеке адреса возврата:
Код:
.SBTTL ;....................... TRAP-ДИСПЕТЧЕР ........................;
TRP:
MOV (SP)+,(SP) ; Позволяет выйти по RETURN вместо RTI
MOV (SP),R0 ; R0 - Адрес возврата
MOVB -2(R0),R0 ; R0 - Аргумент команды TRAP
ASL R0 ; Номер подпрограммы х2
MOV TBL(R0),R0 ; Взять адрес подпрограммы из таблицы
JMP (R0) ; Перейти по адресу подпрограммы