5. Методические рекомендации по заключительной части.
По результатам работы курсантов на занятии и по выборочному опросу группы выставить и объявить оценки. Отметить курсантов, выполнивших задания с максимальной эффективностью. Сделать замечания по ходу работ в отстающих группах. Повторить цели занятия и степень их достижения.
Дать задание на самоподготовку:
1. Повторить основные положения «Инструкции по работе на АИЛК “Микро-580”».
2. Повторить систему команд МП.
3. Знать вопросы и иметь конспект лекции №8 «Организация памяти ЭВМ».
ПРЕПОДАВАТЕЛЬ КАФЕДРЫ № 8
ПОДПОЛКОВНИК А.КОЗЫРЕВ
Вариант 1. В машинных кодах микропроцессора МП КР80 и на языке программирования «Ассемблер» составить программу сложения содержимого регистра А с содержимым регистра С h’0f раз. Результат записать в ОЗУ по адресу h’1812. Прокомментировать каждую команду программы. |
Вариант 2. В машинных кодах МП КР580 и на языке программирования «Ассемблер» составить программу, уменьшающую содержимое регистра А на h’05. Если полученный результат окажется равным 0, увеличить содержимое рег. А на 1 (ком. inra) и завершить программу без сохранения результата. Иначе сохранить результат по адресу h’1861. Прокомментировать каждую команду программы. |
Вариант 3. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу циклического увеличения содержимого регистра D на 1 (ком. inrd) до тех пор, пока результат не станет равным h’ff. Результат записать в ОЗУ по адресу h’1917. Прокомментировать каждую команду программы. |
Вариант 4. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу логического сложения содержимого регистров а и b (ком. orab). Если результат положительный, сохранить его в ячейке ОЗУ[h’1932]. Иначе уменьшить содержимое регистра A на 1 без сохранения результата. Прокомментировать каждую команду программы. |
Вариант 5. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу вычитания из содержимого регистра A содержимое регистра D h’0с раз. Результат записать в ОЗУ по адресу h’1941. Прокомментировать каждую команду программы. |
Вариант 6. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу увеличения содержимого регистра A на h’08. Если полученный результат окажется <0, уменьшить содержимое регистра A на 1 (ком. dcra) и завершить программу без сохранения результата. Иначе сохранить результат по адресу h’1953. Прокомментировать каждую команду программы. |
Вариант 7. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу циклического уменьшения содержимого регистра C на 1 (ком. dcrc) до тех пор, пока результат не станет равным h’5f. Результат записать в ОЗУ по адресу h’1905. Прокомментировать каждую команду программы. |
Вариант 8. В машинных кодах микропроцессора МП КР580 и на языке программирования «Ассемблер» составить программу логического умножения содержимого регистров A и B (ком. anab). Если результат = 0, увеличить содержимое регистра A на 1(ком. inra) без сохранения результата. Иначе записать его в ОЗУ по адресу h’1937. Прокомментировать каждую команду программы. |
Приложение 2.
Задание на практическое задание №4
«Использование систем автоматизации программирования «Ассемблер»
1. Составление программ на языке программирования «Ассемблер»
и в машинных кодах».
Изучить «Инструкцию по работе с АИЛК «Микро-580», правила пользования системной помощью и командами монитора (директивами). Законспектировать основные положения, необходимые для самостоятельной работы на модели в часы самоподготовки. При работе на модели использовать тексты программ, составленных на предыдущем занятии.
2. Ввод программ в машинных кодах в ОЗУ модели
и выполнение их в пошаговом и автоматическом режимах.
2.1. Выполнить п. 5. «Инструкции…» «Пример работы с АИЛК «Микро-580» при использовании машинных кодов».
2.2. Аналогично п. 5. выполнить программы для решения задач №№ 1-3 практического занятия №3, записав их в ОЗУ по произвольному адресу и, проверяя правильность, записанных в ОЗУ кодов программ, снимая дампы памяти директивой «Dадр» и сравнивая их с исходными текстами программ.
2.3. При выполнении программы для решения задачи №1 (Пз№3) в пошаговом режиме составить и прокомментировать таблицу вида,
Регистр Шаг |
PC |
F |
A |
B |
C |
Комментарии |
сняв показания с индицируемых на экране регистров микропроцессора, для каждого шага задания.
3.Трансляция и отладка программ, написанных на языке программирования «Ассемблер».
3.1. Осуществить трансляцию с языка программирования «Ассемблер» и отладку программ для решения задач №№1-3 (Пз№3) по приведенному в «Инструкции…» алгоритму.
3.2. Выполнить программу в автоматическом режиме, проверить правильность результатов и соответствие машинных кодов, полученных в результате трансляции, исходным машинным кодам программ.
3.4. Выполнить программу для решения задачи №2 (Пз№3) для:
1) а > b; 2) a < b
в пошаговом режиме. Снять показания счетчика команд PC для каждого варианта, прокомментировать.
Сделать выводы о взаимодействии узлов и блоков МП при выполнении программ, содержащих ветвящиеся участки. Прокомментировать показания флагового регистра F.
Задачи, разработанные на практическом занятии №3
«Программирование микропроцессора в машинных кодах»
Задача № 1. Составить программу в машинных кодах МП КР 580ИК80 и на языке "Ассемблер", сложения чисел X = h'0f и Y = h'05. Результат переслать в ОЗУ по адресу h'0030.
Решение:
Мнемокод ЯП "Ассемблер" |
№ яч. ОЗУ |
Машинный код |
Комментарии |
mvi a,h’0а |
0 1 |
3е 0f |
h’0f ® a |
mvi b,h’05 |
2 3 |
06 05 |
h’05 ® b |
add b |
4 5 |
80 32 |
(a) + (b) ® a |
sta h’0030 |
6 7 |
30 00 |
(a)результат ® ОЗУ[h’0030] |
hlt |
8 |
76 |
STOP |
Задача № 2. Составить программу для решения выражения:
при а = h'09; b = h'03. Результат записать в ОЗУ по адресу h'0030.Решение:
Мнемокод ЯП "Ассемблер" |
№ яч. ОЗУ |
Машинный код |
Комментарии |
mvi a, h'09 |
0 1 |
3е 09 |
h’09 ® a |
mvi b, h'03 |
2 3 |
06 03 |
h’03 ® b |
sub b |
4 |
90 |
(a) – (b) ® a |
jm m1 |
5 6 7 |
fa 0b 00 |
условный пареход if < 0, то к m1 |
mvi a, h'09 |
8 9 |
3e 09 |
h’09 ® a восстановление аккумулятора |
add b |
a |
80 |
(a) + (b) ® a |
m1: sta h'0030 |
b c d |
32 30 00 |
результат ® ОЗУ[h’0030] |
hlt |
E |
76 |
STOP |
Задача № 3. Составить программу циклического уменьшения числа А = h'14 с шагом b = h'02 пять раз.
Решение:
Мнемоники ЯП "Ассемблер" |
№ яч. ОЗУ |
Машинный код |
Комментарии |
mvi a, h'14 |
0 1 |
3e 14 |
h’14 ® a |
mvi b, h'02 |
2 3 |
06 02 |
h’02 ® b |
mvi c, h'05 |
4 5 |
0e 05 |
h’05 ® c |
M1: sub b |
6 |
90 |
(a) – (b) ® a |
dcr c |
7 |
0d |
(c) – 1® c |
jnz m1 |
8 9 a |
c2 06 00 |
if ¹ 0, то к m1 |
sta h'0030 |
b c d |
32 30 00 |
(a)результат ® ОЗУ[h’0030] |
hlt |
E |
76 |
STOP |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.