Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 210

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 204 205 206 207 208 209 < 210 > 211 212 213 214 215 216 .. 528 >> Следующая

LDX LDX #opr LDX opr LDX opr LDX opr.x LDX opr.x LDX ,x LDX opr.SP LDX
opr.SP Загрузить в регистр X константу или содержимое ячейки памяти
X <= (М) IMM DIR EXT IX SP1 SP2 0 I I
LDHX LDHX #opr LDHX opr Загрузить в индексный регистр Н:Х
двухбайтовую константу или содержимое двух ячейек памяти Н:Х <= (М:
М+$0001) IMM DIR 0 - - I I -
STA STA opr STA opr STA opr.X STA opr.X STA.X STA opr.SP STA opr.SP
Запомнить содержимое аккумулятора АСС в ячейке памяти М <= (А)
DIR EXT IX SP1 SP2 0 I I
STX STX opr STX opr STX opr.X STX opr.X STX ,X STX opr.SP STX opr.SP
Запомнить содержимое регистра X в ячейке памяти М <= (X) DIR
EXT IX SP1 SP2 0 I $
STHX STHX opr Запомнить содержимое индексного регистра Н:Х в двух
ячейках памяти (М:М+$0001) <= (Н:Х) DIR 0 - - I I
-
MOV MOV opr,opr MOV opr.X+ MOV #opr,opr MOV X+,opr Прислать данные из
одной ячейки памяти в другую (М2)<= (М2) DIR/DIR DIR/IX + IMM/DI-R IX+/DIR
0 - - I I -
8-РАЗРЯДНЫЕ микроконтроллеры
Продолжение табл. 4.23
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки
V Н I N Z с
TAX Прислать содержимое аккумулятора АСС в регистр X X <s= (А) IN Н
-
ТХА Переслать содержимое регистра X в аккумулятор АСС А "= (X) IN Н
-
ТАР Переслать содержимое аккумулятора АСС в регистр признаков CCR CCR
<= (А) IN Н $ $ $ $ г $
ТРА Переслать содержимое регистра признаков в аккумулятор АСС А <=
(CCR) IN Н -
TSX Переслать увеличенное на 1 содержимое указателя стека SP в
индексный регистр Н:Х Н:Х <= (SP)+$0001 INH

TXS Переслать уменьшенное на 1 содержимое индексного регистра Н:Х в
указатель стека SP (SP)"= (Н:Х)-$0001 IN Н

Отличительная особенность команд загрузки и пересылки CPU08 - установка
признаков нуля Z и знака N в соответствие со значением перемещаемого
числа. Следует также обратить внимание на способы адресации, которые
могут быть использованы в команде LDHX:
• двухбайтовый регистр индексной адресации Н:Х может быть загружен
двухбайтовой константой;
• или содержимым двух ячеек памяти, но на адрес первой из этих ячеек
наложено ограничение; этот адрес должен быть однобайтовым $00 - $FF.
Команда MOV выполняет пересылку данных из одной ячейки памяти в другую,
минуя регистры центрального процессора. Команда MOV может быть
использована в одной из четырех модификаций:
MOV #data,adr ; Загрузить константу в прямоадресуемую ячейку
памяти.
MOV adr1,adr2 ; Переслать данные из одной прямоадресуемой ячейки
памяти в другую
; прямоадресуемую.
MOV х+, adr ; Переслать данные из ячейки памяти, адрес которой указан
в индексном
; регистре Н:Х, в прямоадресуемую ячейку памяти. Содержимое Н:Хувеличи-;
вается на 1 после пересылки.
MOV adr,x+ ; Переслать данные из прямоадресуемой ячейки памяти в
ячейку, адрес ко-
; торой указан в индексном регистре Н:Х. Содержимое Н:Х увеличивается на
1 ; после пересылки.
Отметим, что одна из ячеек памяти (источник или приемник операнда) в
формате команды обязательно прямоадресуемая, т. е. ее адрес может
находиться в пределах от $00 до $FF. Именно это адресное пространство в
МК семейства НС08 занимают регистры специальных функций периферийных
модулей. Следовательно, команда MOV может быть органично использована для
приема или передачи информации в регистры данных портов ввода/вывода,
АЦП, последовательных портов и т. д.
Арифметические команды. Данную группу образуют 14 команд (табл. 4.24),
выполняющие операции сложения (ADD и ADC), вычитания (SUB и SBC),
инкремента и декремента (INC и DEC), однобайтового и двухбайтового
сравнения, умножения и деления (MUL и DIV). Команды сложения (ADD и ADC),
вычитания (SUB и SBC) и однобайтового
372
СЕМЕЙСТВО МК НС08 ФИРМЫ "MOTOROLA"
сравнения (СМР и СРХ) могут быть использованы с восемью различными
способами адресации. Однако сравнение двухбайтового индексного регистра
Н:Х может быть выполнено только с двухбайтовой константой, которая задана
во втором и третьем байтах команды, или с содержимым двух ячеек памяти,
адрес первой из которых равен $00 - $FF. Команда умножения MUL выполняет
операцию целочисленного беззнакового умножения. Сомножители расположены в
регистрах АСС и X, двухбайтовое произведение - в Н:АСС. Время выполнения
операции составляет 5 машинных циклов. Команда деления DIV выполняет
целочисленное беззнаковое деление двухбайтового делимого (Н:АСС) на
однобайтовый делитель (X). Целое частное расположено в АСС, остаток - в
Н. Делитель X сохраняется без изменения. Время выполнения операции - 7
машинных циклов.
Следует обратить внимание на формат представления операнда в командах AIX
и AIS. Однобайтовый операнд должен быть представлен в дополнительном коде
со знаком:
AIX #$FF ; Вычесть 1 из содержимого двухбайтового индексного регистра
Н:Х.
AIX #$80 ; Вычесть 128 из содержимого двухбайтового индексного регистра
Н:Х.
AIS #$01 ; Увеличить на 1 указатель стека SP.
AIS #$FF ; Вычесть 1 из указателя стека SP.
Несмотря на то, что инструкции инкремента и декремента над содержимым
Предыдущая << 1 .. 204 205 206 207 208 209 < 210 > 211 212 213 214 215 216 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed