§ Система инструкции
Код операции Мнем Краткое описание
0000 NZPi iiii iiii | BR | Условный переход (9 битное смещение)
0001 DDDS SS00 0sss | ADD | Сложение регистр-регистр D = S + s
0001 DDDS SS1i iiii | ADD | Сложение регистр-значение D = S + i
0010 DDDi iiii iiii | LD | Загрузка значения из RPC + offset
0011 SSSi iiii iiii | ST | Сохранение в RPC + Offset
0100 1iii iiii iiii | JSR | Вызов процедуры Offset11
0100 000B BB00 0000 | JSR | Вызов процедуры Base Reg
0101 DDDS SS00 0sss | AND | Регистр-регистр D = S & s
0101 DDDS SS1i iiii | AND | Регистр-значение D = S & i
0110 0000 0000 0000 | LDR | Загрузка значения из BaseReg + Offset
0111 DDDB BBii iiii | STR | Сохранение в BaseReg + Offset
1000 0000 0000 000 | RTI | [не реализовано] возврат из прерывания
1001 DDDS SS11 1111 | NOT | Логическое отрицание битов (complement)
1010 DDDi iiii iiii | LDI | Загрузка косвенного значения по RPC + Offset
1011 SSSi iiii iiii | STI | Сохранение по косвенному адресу
1100 000B BB00 0000 | JMP | Переход по регистру или адресу
1101 0000 0000 0000 | --- | Не используется
1110 DDDi iiii iiii | LEA | Загрузка эффективного адреса
1111 0000 iiii iiii | TRAP | Системный вызов [0..255]
§ Системные вызовы
Вызывается через TRAP #vector
0 tgetc Чтение символа с клавиатуры в R0
1 tout Вывод символа из R0 в консоль
2 tputs Печать строки, начиная с R0 и заканчивая на \x00
3 tin Чтение символа с клавиатуры в R0 с выдачей в консоль
4 tputsp -- не реализовано -- используется для выдачи символа
5 thalt Остановка исполнения программ
6 tinu16 Чтение целочисленного значения с клавиатуры и сохранение в R0
7 toutu16 Печать целочисленного R0 в консоль