Приложение 2.
Задание
на практическое занятие №12(Зан.№43)
«Анализ работы МП при выполнении команд»
по учебной дисциплине «Цифровые устройства и микропроцессоры».
1. Анализ работы МП при выполнении команд пересылки данных.
Произвести трансляцию и отладку программы p1.asm(см. Табл. 2), записать в ОЗУ МПС и выполнить в пошаговом режиме. Показания индицируемых на экране монитора регистров МП для каждого шага, занести в Табл.1 и прокомментировать.
Результат:
Выполняемая команда |
PC |
F |
A |
B |
C |
D |
E |
H |
L |
Комментарии |
mvia, h'14 |
0002 |
00 |
14 |
00 |
00 |
00 |
00 |
00 |
00 |
РгА: =h'14 |
mov c,a |
0003 |
00 |
14 |
00 |
14 |
00 |
00 |
00 |
00 |
Рг C:=(РгA) |
lxi d,h'4321 |
0006 |
00 |
14 |
00 |
14 |
43 |
21 |
00 |
00 |
Рг [D,E]:= h’4321 |
lxi h,h'8765 |
0009 |
00 |
14 |
00 |
14 |
43 |
21 |
87 |
65 |
Рг [H,L]:= h’8765 |
xchg |
000а |
00 |
14 |
00 |
14 |
87 |
65 |
43 |
21 |
Рг [D,E]« Рг [H,L] |
mov b,h |
000в |
00 |
14 |
43 |
14 |
87 |
65 |
43 |
21 |
Рг B:=(РгH) |
hlt |
000c |
STOP |
Ответить на вопросы:
1. Почему приращения содержимого регистра счетчика команд МП (РС) при выполнении шагов программы p1.asmне одинаковы?
Ответ: Содержимое РС увеличивается в соответствии с количеством байт выполняемой команды (за исключением команд перехода).
2. Содержимое каких регистров МП будет изменено при выполнении команд lxid,h'4321 и
lxih,h'8765?
Ответ:Рг [D,E]и Рг [H,L].
3. Функции, выполняемые командойxchg?
Ответ:Содержимое регистров H и L обменивается с содержимым регистров D и E.
2. Анализ работы МП при выполнении арифметических команд.
Произвести трансляцию и отладку программы p2.asm(см. Табл. 2), записать в ОЗУ МПС и выполнить в пошаговом режиме. Показания индицируемых на экране монитора регистров МП для каждого шага, занести в Табл.1 и прокомментировать.
Результат:
Выполняемаякоманда |
PC |
F |
A |
B |
C |
D |
E |
H |
L |
Комментарии |
||||||||||||
lxi b,h'5f3a |
0003 |
00 |
00 |
5f |
3a |
00 |
00 |
00 |
00 |
Рг [B,C]:= h’5f3a |
||||||||||||
adi h'de |
0005 |
86 |
de |
5f |
3a |
00 |
00 |
00 |
00 |
РгA:=(РгA)+ h’de |
||||||||||||
rrc |
0006 |
86 |
6f |
5f |
3a |
00 |
00 |
00 |
00 |
Сдвиг (РгА) на 1 вправо |
||||||||||||
sub b |
0007 |
02 |
10 |
5f |
3a |
00 |
00 |
00 |
00 |
РгА:= (РгА) - (РгВ) |
||||||||||||
dcr c |
0008 |
06 |
10 |
5f |
3a |
00 |
00 |
00 |
00 |
РгС:= (РгС) - 1 |
||||||||||||
inxh |
0009 |
02 |
10 |
5f |
39 |
00 |
00 |
00 |
01 |
Рг [H,L]:= Рг [H,L]+1 |
||||||||||||
dcx d |
000a |
96 |
10 |
5f |
39 |
ff |
ff |
00 |
01 |
Рг [D,E]:= Рг [D,E]-1 |
||||||||||||
dad b |
000b |
06 |
10 |
5f |
39 |
ff |
ff |
5f |
3a |
Рг [H,L]:= Рг [B,C]+ Рг [H,L] |
||||||||||||
sui h'1f |
000d |
93 |
f1 |
5f |
39 |
ff |
ff |
5f |
3a |
РгА:= (РгА) - h’1f |
||||||||||||
rlc |
000e |
93 |
e3 |
5f |
39 |
ff |
ff |
5f |
3a |
Сдвиг (РгА) на 1 влево |
||||||||||||
hlt |
000f |
STOP |
||||||||||||||||||||
Ответить на вопросы:
1. Порядок изменения содержимого регистра флагов МП (F)? Привести пример из Табл.1дляp2.asm.
Ответ:Регистр флагов (признаков) - это 8-разрядный регистр, предназначен для хранения определенных признаков, выявляемых в числе, которое представляет собой результат выполнения некоторых операций:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Тг. Знака S |
Тг. Ноля Z |
Х |
Тг. Доп.переноса АС |
Х |
Тг. Четности Р |
Х |
Тг. переноса С |
2. На примере (см. Табл.1)объяснить функции, выполняемые командой rrc, представив число h’de в двоичном коде?
Ответ:Cодержимое аккумулятора сдвигается на одну позицию вправо. Содержимое младшего бита заносится в самый старший бит и бит флага переноса. Команда воздействует только на флаг переноса.
h’de=b’1101 1110, при сдвиге: b’0110 1111=h’6f
3. Используя данные Табл.1,проверить правильность выполнения программной моделью МП команды dadb.
Ответ:Содержимое пары регистров В и С складывается с содержимым регистров Н и L. Результат помещается в пару регистров Н и L.
В программе p2.asmперед выполнением команды dadbсодержимое регистров:
Рг [B,C]:= h’5f39;
Рг [H,L]:= h’0001.
После выполнения команды:
Рг [H,L]:= Рг [B,C]+ Рг [H,L]= h’5f3a
3. Анализ работы МП при выполнении логических команд.
Произвести трансляцию и отладку программы p3.asm(см.Табл. 2), записать в ОЗУ и выполнить в пошаговом режиме. Показания индицируемых на экране монитора регистров МП для каждого шага, занести в Табл.1 и прокомментировать.
Проверить правильность выполнения программной моделью МП программы p3.asm, выполнив логические операции предписанные программой вручную, предварительно представив исходные данные в двоичном коде.
Результат:
Выполняемая команда |
PC |
F |
A |
B |
C |
D |
E |
H |
L |
Комментарии |
||||||||||||
lxi b,h'5b17 |
0003 |
00 |
00 |
5b |
17 |
00 |
00 |
00 |
00 |
Рг [B,C]:= h’5b17 |
||||||||||||
mov a,c |
0004 |
00 |
17 |
5b |
17 |
00 |
00 |
00 |
00 |
РгA:=(РгC) |
||||||||||||
ana b |
0005 |
02 |
13 |
5b |
17 |
00 |
00 |
00 |
00 |
РгА:= (РгА)& (РгВ) |
||||||||||||
cmp c |
0006 |
97 |
13 |
5b |
17 |
00 |
00 |
00 |
00 |
(РгА)- (РгC); S |
||||||||||||
ori h'26 |
0008 |
02 |
37 |
5b |
17 |
00 |
00 |
00 |
00 |
РгА:= (РгА)Ú h’26 |
||||||||||||
xrih'38 |
000а |
06 |
0f |
5b |
17 |
00 |
00 |
00 |
00 |
РгА:= (РгА) Å h’38 |
||||||||||||
hlt |
000c |
STOP |
||||||||||||||||||||
Проверка:
(РгА): =h'17=b’0001 0111
(РгB): =h'5b=b’0101 1011
1) РгА:= (РгА) & (РгВ)=b’0001 0011
2) (РгА)- (РгC) ; содержимое РгА не изменяется (уст. флаг знака S)
3) РгА:= (РгА)Ú h’26 b’00010011Ú b’0010 0110= b’0011 0111=h’37
4) РгА:= (РгА) Å h’38 b’0011 0111Å b’0011 1000= b’0000 1111= h’0f
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.