Лекция: Вспомогательные таблицы
В данном разделе представлены вспомогательные таблицы (табл. 8.4—8.8) для работы с моделью учебной ЭВМ.
Таблица 8.4.Таблица команд учебной ЭВМ
| Мл.\Ст. | ||||
| NOP | JMP | MOV | ||
| IN | JZ | RD | RD | RDI |
| OUT | JNZ | WR | WR | |
| IRET | JS | ADD | ADD | ADI |
| WRRB | JNS | SUB | SUB | SBI |
| WRSP | JO | MUL | MUL | MULI |
| PUSH | JNO | DIV | DIV | DIVI |
| POP | JRNZ | IN | ||
| RET | INT | El | OUT | |
| HLT | CALL | DI |
Таблица 8.5.Типы адресации, их коды и обозначение
| Обозначение | Код | Тип адресации | Пример команды |
| Прямая (регистровая) | ADD 23 (ADD R3) | ||
| # | Непосредственная | ADD #33 | |
| @ | Косвенная | ADD @33 |
| Таблица 8.5(окончание) | |||
| Обозначение | Код | Тип адресации | Пример команды |
| [ ] | Относительная | ADD [33] | |
| @R | Косвенно-регистровая | ADD @R3 | |
| @R+ | Индексная с постинкрементом | ADD @R3+ | |
| -@R | Индексная с преддекрементом | ADD -@R3 |
В табл. 8.6 приняты следующие обозначения:
□ DD— данные, формируемые командой в качестве (второго) операнда:
прямо или косвенно адресуемая ячейка памяти или трехразрядный непо
средственный операнд;
□ R* — содержимое регистра или косвенно адресуемая через регистр ячейка
памяти;
□ ADR* — два младших разряда ADR поля регистра CR;
□ V — адрес памяти, соответствующий вектору прерывания;
□ М(*) — ячейка памяти, прямо или косвенно адресуемая в команде;
□ I — пятиразрядный непосредственный операнд со знаком.
Таблица 8.6. Система команд учебной ЭВМ
| КОП | Мнемокод | Название | Действие |
| NOP | Пустая операция | Нет | |
| IN | Ввод | Асc ß IR | |
| OUT | Вывод | OR ßАсc | |
| IRET | Возврат из прерывания | FLAGS.PC ß M(SP); INC(SP) | |
| WRRB | Загрузка RB | RB ßCR[ADR] | |
| WRSP | Загрузка SP | SP ß CR[ADR] | |
| PUSH | Поместить в стек | DEC(SP); M(SP) ß R | |
| POP | Извлечь из стека | R --> M(SP); INC(SP) | |
| RET | Возврат | PC --> M(SP); INC(SP) | |
| HLT | Стоп | Конец командных циклов | |
| JMP | Безусловный переход | PC ß CR[ADR] | |
| JZ | Переход, если 0 | if Acc = 0 then PC ß CR[ADR] |
| Таблица 8.6(продолжение) | |||
| коп | Мнемокод | Название | Действие |
| JNZ | Переход, если не 0 | if Асc Ф 0 then PC ß CRfADRJ | |
| JS | Переход, если отрицательно | if Асc < 0 then PC ßCR[ADR] | |
| JNS | Переход, если положительно | if Acc > 0 then PC ßCR[ADR] | |
| JO | Переход, если переполнение | if |Acc| > 99999 then PC ß CR[ADR] | |
| JNO | Переход, если нет переполнения | if |Acc| < 99999 then PC ß CR[ADR] | |
| JRNZ | Цикл | DEC(R); if R > 0 then PC ßCR[ADR] | |
| INT | Программное прерывание | DEC(SP); M(SP) ßFLAGS.PC; PC ß M(V) | |
| CALL | Вызов подпрограммы | DEC(SP); M(SP) ß PC; PC ßCR(ADR) | |
| Нет | |||
| RD | Чтение | Acc ßDD | |
| WR | Запись | M(*)ßAcc | |
| ADD | Сложение | Ace ßAcc + DD | |
| SUB | Вычитание | Acc ßAcc — DD | |
| MUL | Умножение | Acc ßAcc x DD | |
| DIV | Деление | Acc ß Acc/DD | |
| Нет | |||
| El | Разрешить прерывание | IF ß 1 | |
| DI | Запретить прерывание | IFß0 | |
| MOV | Пересылка | Rl ß R2 | |
| RD | Чтение | Ace ß R* | |
| WR | Запись | R* ßAcc | |
| ADD | Сложение | Acc ß Acc + R* | |
| SUB | Вычитание | Acc ß Acc — R* | |
| MUL | Умножение | Acc ß Acc x R* | |
| DIV | Деление | Acc ß Acc/R* | |
| IN | Ввод | Acc ßBy(CR[ADR*]) |
| Таблица | 3.7.Таблица кодов ASCII (фрагмент) | |||||||||||||||
| A | В | С | D | Е | F | |||||||||||
| @ | Р | • | P | A | р | а | Р | |||||||||
| ! | А | Q | а | q | Б | С | б | с | ||||||||
| В | R | b | r | В | т | в | т | |||||||||
| # | С | S | с | s | Г | У | г | У | ||||||||
| $ | D | т | d | t | Д | ф | д | Ф | ||||||||
| % | Е | U | е | u | Е | X | е | X | ||||||||
| & | F | V | f | V | Ж | ц | ж | Ц | ||||||||
| i | G | W | g | w | ч | ч | ||||||||||
| ( | Н | X | h | X | и | ш | и | ш | ||||||||
| ) | I | Y | i | У | й | щ | й | Щ | ||||||||
| А | J | Z | j | z | к | ъ | к | ъ | ||||||||
| В | + | > | К | [ | к | { | л | ы | л | ы | ||||||
| С | < | L | м | ь | м | ь | ||||||||||
| D | — | = | М | ] | m | } | н | э | н | э | ||||||
| Е | > | N | n | щ | ю | Щ | ю | |||||||||
| F | / | ? | __ | o | п | я | п | я |
| Таблица 8.8. Перевод НЕХ-кодов в десятичные числа | ||||||
| А | В | С | D | Е | F | |
| А | ||||||
| В | ||||||
| С | ||||||
| D | ||||||
| Е | ПО | |||||
| F |
еще рефераты
Еще работы по информатике