- •Микропроцессор мс68000
- •Команда dBcc
- •Команда Scc
- •Команды nop и stop
- •Управляющие структуры
- •Практическая часть.
- •Команды безусловной передачи управления .
- •Команды условного перехода.
- •Команды условного перехода с декрементом в регистре Dn
- •Команды работы с подпрограммами
- •Контрольные вопросы и задания.
Контрольные вопросы и задания.
ᄃВопросы.
1. Какой флаг проверяют команды:
BCS
BLS
BHI
BPL
2. Объясните различие между командами BRA и JMP .
3. Найдите ошибку в написании команд:
BRA.B 1000;
RTS.L D3;
4. Воздействует ли команды DBcc на флаги регистра состояния ?
5. Расскажите о принципе работы команды DBcc.
6. Какие биты в регистре состояния тестирует команда BGT ?
7. Как осуществляет передачу управления команда DBF ?
8. В чем отличие команд группы DBcc от Bcc ?
9. Когда необходимо сохранить регистр состояния до вызова подпрограммы или в самой подпрограмме, если выход из нее осуществляется командой RTR?
10. С помощью каких команд осуществляется возврат из подпрограмм ?
11. В чем различия вызова подпрограмм командами JSR и BSR?
12. Воздействует ли на флаги ССR команда BSR, если выход из подпрограммы осуществляется с восстановлением регистра состояния ?
13. Можно ли с помошью команды BRA, находящейся по адресу $100, перейти к команде записанной в ячейке $90000 ?
14. Объясните работу команды STOP еходов команд BRA.S и BRA.L?
16. Найдите ошибку в написании команд:
DBF.L D1,LOOP
DBF.W D1,LOOP
DBF.S D1,LOOP
17. Какие способы адресации могут быть использованны для задания адреса перехода в команде JMP <EA> ?
18. Какие способы адресации могут быть использованны для задания адреса перехода в команде JSR <EA> ?
19. Cколько бит отводится для записи длинного смещения в команде BLS.L ?
20. Cколько бит отводится для записи короткого смещения в команде BHI.S ?
21. Объясните принцип работы команды SCS <label> ?
22. Какие условия перехода используются в знаковой арифметике?
23. Какие условия перехода используются в беззнаковой арифметике?
24. Какие длины переходов используются в команде DBcc?
25. Какие флаги меняет команда RTS?
Задания.
1. Напишите программу , реализующую на языке ассемблера управляющую структуру IF L THEN S , где L - логическое выражение, а S - оператор.
2. Напишите программу , реализующую на языке ассемблера управляющую структуру IF L THEN S1 ELSE S2 , где L - логическое выражение, а S 1,S2- операторы
3. Преобразуйте программу , написанную на языке высокого уровня, A=10;
while (A>2)
{ тело цикла ;
A=A-1;}
в последовательность команд ассемблера.
4. Составить программу , реализующую на языке ассемблера циклическую структуру типа FOR I=N1 TO N2 DO S.
5. Состaвить программу , реализующую на языке ассемблера циклическую структуру типа REPEAT S UNTIL L .
6. Составить программу , реализующую на языке ассемблера циклическую структуру типа FOR I=N DOWNTO -1 DO S .
Микропроцессор МС68000. Лабораторный практикум