Программа разделения исходного слова на две части для МП Motorola 6800 имеет вид:
М6800 пример 3
.jpg)
Шестнадцатиричный адрес ячейки памяти
|
Мнемонический код операции
|
Шестнадцатиричный код содержимого памяти
|
00
|
LDAA $40
|
щ
|
01
|
40
|
02
|
ANDA
|
84
|
-
|
# % 00001111
|
|
03
|
OF
|
04
|
STAA $ 41
|
97
|
05
|
41
|
06
|
LDAA $ 40
|
96
|
07
|
40
|
08
|
LSRA
|
44
|
09
|
LSRA
|
44
|
OA
|
LSRA
|
44
|
OB
|
LSRA
|
44
|
ос
|
STAA $42
|
97
|
0D
|
42
|
OF
|
SWI
|
3F
|
Рис. 5.9. Результат ассемблирования программы разделения слова для МП Motorola 6800
.jpg)
Единственной новой командой в данной программе является команда LSRA, которая выполняет логический сдвиг аккумулятора А на один бит вправо, т. е. обнуляет самый старший значащий бит. Команда LSRA занимает одну ячейку памяти и выполняется за 2 мкс. Результат ассемблирования этой программы показан на рис. 5.9, на рис. 5.10 показано содержимое регистров и памяти после логического сдвига вправо на один разряд. Попробуйте с карандашом в руках проследить, как будет меняться содержимое ячеек и регистров при выполнении оставшейся части программы.