Некоторые справочные данные по е-97

А. Система команд процессора

МОД   коп   ОП1   ОП 2   Пояснения  
х     X   X   Нет операции  
х     X   X   оп l => oп 2  
х     X   X   oп 2 + oп 1 => oп 2  
х     X   X   oп 2 – oп l =>oп 2  
х     X   X   oп 2 + oп 1 (сравнить)  
х     X   X   oп 2 * oп l => oп 2  
х     X   X   oп 2/oп l => oп 2  
X     х   х   оп 2 AND oп 1 => oп 2  
X     х   х   oп 2 OR oп l => оп 2  
X     х   х   oп 2 XOR oп l => oп 2  
X   А   х   х   порт! => oп 2  
X   В   х   х   oп 1 => порт 2  
X   С   х   х   Переход по адресу  
X   D   X   х   Переход по смещению  
некоторые справочные данные по е-97 - student2.ru X   Е   *   х   (Одноадресные операции)  
X   F   X   х   Останов  
МОД коп ОП1 Пояснения
х   Е1   х   NOT oп l  
х   Е2   х   оп 1 => стек  
х   ЕЗ   х   стек => oп l  
х   Е4   х   SP + oп l => SP  
х   Е5   х   SP – oп 1 => SP  
х   Е6   х   Oп 1 => SP  
х   Е7   х   SP => oп l  
х   Е8     PS => стек  
х   Е9     стек => РS  
х   ЕА   X   Сдвиг влево oп l  
х   ЕВ   X   Сдвиг вправо oп l  
х   ЕС   X   Арифметический сдвиг вправо oп l

Б. Двоичные коды модификатора МОД для переходов

0000 - возврат из подпрограммы

0001 - безусловный переход

0010 - N=0 (>=0)

0011 - N=l (<0)

0100 - Z=0 (<>0)

0101 - Z=l (=0)

0110 - N=1 or Z=l (<=0)

0111 - N=0 and Z=0 (>0)

1001 - вызов подпрограммы.

В. Важные кочанды с «короткой константой»

XX 10 0001 0000 ХХХХ - очистить oп l

ХХ 10 0010 0001 ХХХХ - +1 в оп 1

XX 11 0010 0001 ХХХХ - ****

или

ХХ 10 0011 0001 ХХХХ - -1 из oп l

XX 10 0100 0000 ХХХХ - сравнить 0 с oп 1

XX 11 0101 0001 ХХХХ - *(-1) оп1

ХХ 10 0111 0001 ХХХХ -oп l MOD 2 = => oп l

Г. Кодирование операндов

    R0         резерв  
    R1         резерв  
    R2         резерв  
    R3         резерв  
    (R0)         резерв  
    (R1)         константа  
    (R2)         адрес ОЗУ  
    (R3)         резерв  

Контрольные вопросы и задания

1. Назовите основные функциональные устройства учебного компьютера «Е97» и охарактеризуйте их назначение.

2. Какие виды памяти существуют в «Е97» и как они адресуются?

3. Сопоставьте адресацию к байтам и к словам. Какие вам удалось заметить различия?

4. В ОЗУ, начиная с адреса 300, хранятся следующие байты: 00, 01, 02, 03. Какое слово будет прочитано по адресу 302?

5. В ОЗУ начиная с адреса 300 хранятся слова 0102 и 5301. Совпадают ли находящиеся в адресах 301 и 302 байты?

6. Что такое BIOS и какова его роль в современном компьютере? Знаете ли вы название фирмы, написавшей BIOS для вашего компьютера?

7. Какие значения получат управляющие признаки, если результат операции получится равным 1?0?

8. Какие внутренние регистры содержит учебный процессор «Е97» и каково их назначение?

9. Из каких частей состоит полная команда «Е97»?

10. Какие форматы может иметь команда «Е97»? Приведите примеры команд на каждый из форматов.

11. Напишите программы вычисления нескольких арифметическихвыражений.

12. Чем различаются переходы с кодами С и D и как они работают?

13. Если рассмотренную в одном из примеров команду 1D06 поместить в ячейку с адресом не 42, а 4Е, то какая команда будет выполняться следующей?

14. Каково должно быть смещение в команде перехода к адресу56, если сама команда имеет адрес 4Е? 5Е?

15. Какие значения можетпринимать модификатор в командах перехода и что они обозначают?

16. Напишите программу, которая переписывает в R3 наименьшее из чисел, хранящихся в регистрах R1 и R2.

17. Придумайте задачи, при программировании которых может быть полезно использование процедур или функций.

18. Как процессор обращается к подпрограмме и выходитиз нее обратно?

19. Какие операции можно делать с указателем стека?

20. Чем отличаются сдвиги с кодами операций ЕВ и ЕС? Приведите пример, когда эти различия незаметны.

21. Какие методы адресации реализованы в «Е97»? Приведите по два-три примера на каждый из них.

22. Как кодируются следующие операнды: R2? (R3)? константа 345? ячейка 66?

23. Объясните, как будет выполняться команда 0572 и какие значения требуется знать, чтобы предсказать ее результат.

24. Чем различается выполнение команд 0301 и 0345?

25. Изменится ли значение регистра R0 при выполнении команды 0Е14?

26. Сколько слов занимает команда (40) - (50) Ю (40) и как она кодируется?

27. Как записывается команда, умножающая на 3 содержимое ячейки 50?

28. Какой командой можно присвоить регистру R2 некоторое значение?-

29. Что такое «короткая константа» и когда она бывает полезна?

30. Для команд 25АЗ и 3653 напишите эквивалентные, используя метод адресации констант по счетчику команд.

31. Почему среди списка полезных команд с «короткой константой» нет умножения на 2?

32. Подробно объясните с точностью до бита кодировку команды С470. ,,

33. Что такое порт ввода-вывода?

34. Как называются порты, имеющиеся у каждогоиз внешних устройств «Е97»?

35. Перечислите все известные вам порты ввода-вывода, реализованные в учебном компьютере «Е97». и их номера.

36. Каков стандартный алгоритм обмена процессора с внешним устройством? Какую роль играет в нем бит готовности?

37. По аналогии с приведенной в тексте программой вывода символа на дисплей, напишите самостоятельно программу ввода символа с клавиатуры. Не забудьте организовать при этом «эхо-печать», т.е. вывести принятый с клавиатуры символ.

Наши рекомендации