Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка - Лабораторные работы №1-4.DOC
Скачиваний:
28
Добавлен:
02.05.2014
Размер:
3.19 Mб
Скачать

4 Контрольные вопросы

4.1 Указать назначение разрядов регистра F .

4.2 В каких кодах осуществляется операция вычитания в микроЭВМ и каким образом устананавливается содержание разряда СУ регистра F после её выполнения ?

4.3 Каким образом определяется адрес следующей команды после выполнения команд JMP аа , JPE аа ?

4.4 Каким образом определяется адрес ячейки M для занесения операнда V при реализации команды MVI M,V ?

4.5 Для каких целей используется команда DAA ?

4.6 Каков должен получиться результат после выполнения команды ANA B , если A=78(16), B=5F(16) ?

4.7 Как определяется адрес ячейки памяти при выполнении команды ADD M и в каких кодах выполняется сложение ?

5 Требования к отчету

Отчет должен содержать:

  • уточненный алгоритм вычислений согласно варианту ;

  • программу , реализующую данный алгоритм в мнемонике Ассемблера и в машинных кодах ;

  • результаты прогона программы по шагам с указанием содержимого РОН, ячеек памяти и комментариями .

  • операции сложения, вычитания, сдвига представить в двоичной системе счисления .

Лабораторная работа № 3 Подпрограмма и стек

1 Цель работы

Изучить организацию стековой памяти для процедур вызова подпрограмм, обработки прерываний и выполнения арифметических операций; команды, предназначенные для работы со стеком, и программирование с использованием стековой памяти .

2 Теоретические сведения

Использование стековой памяти оказалось весьма эффективным при построении компилирующих и интерпретирующих программ: программ, использующих многократные вычисления алгебраических функций и нестандартные арифметические операции; программ с обработкой операндов с последовательным размещением.

Принцип работы стековой памяти поясняется рисунком 3.1.

Х1 0 --- ОЗУ

X2 РА DC 1-- :

Х3 ---______

Х4 -- ______ запись

: Xn__

: SP  : чтение

: ______

Х1_ CТЕК

---______

Хn R 2R -1 ---

запись чтение

а б

Рисунок 3.1

Работа стековой памяти осуществляется по правилу: " последним записан - первым считан ". Так, вначале записывается в стек (рисунок 3.1а) число Х1. Затем число Х1 сдвигается вверх при записи числа Х2 в стек. Тем самым любое записываемое число Хi сдвигает массив "вверх" и размещается в нижней ячейке . При чтении считывается содержимое самой "нижней "ячейки, а весь оставшийся массив чисел сдвигается "вниз". Размещая и считывая двоичные коды в указанном порядке, легко организовать поиск последнего записанного кода или организовать последовательную обработку кодов Хn,. . .,Х1. Однако микрооперация сдвига массива требует значительных аппаратных затрат .С целью упрощения стековой памяти используют специальный реверсивный счетчик-указатель стека SP. При использовании SP не требуется микрооперация сдвига массива, достаточно перемещения возбуждения "вверх" или "вниз" выходных шин с дешифратора адреса. Так, при записи счетчик декрементируется SP-1 и число через шину данных записывается "вверх"(в сторону младших номеров шин DC), при чтении число сначала считывается, затем устанавливается адрес следующего операнда (SP+1) для возможного считывания .

При записи (считывании) двухбайтных операндов в восьмиразрядную память последовательно инкрементируется (декрементируется) дважды SP+2. При этом запись (считывание) осуществляется побайтно в две соседние ячейки : в М(SP),М(SP+1) - при считывании, в М(SP-1), М(SP-2) - при записи . Содержимое ячеек М(SP) и М(SP+1) определяет информацию в вершине стека (SÃ), которая загружается в РОН при чтении стековой памяти.