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

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

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 528 >> Следующая

один или два машинных цикла. При тактовой частоте 12 МГц длительность
машинного цикла составляет 1 мкс. Множество команд делится на 5
традиционных групп, каждая из которых рассмотрена ниже. Распределение
команд по группам приведено в табл. 4.6.
Табпица4.6
Распределение команд ассемблера MCS-51 по типовым группам
Группа команд Число инструкций в группе
Команды передачи данных 28
Арифметические команды 24
Логические команды и команды сдвигов 25
Команды битового процессора 12
Команды управления ходом вычислительного процесса 22
Главная отличительная особенность системы команд ядра MCS-51 - наличие
большого числа двухадресных команд передачи данных. Операнды под
управлением одной команды могут перемещаться не только между одним из
регистров центрального процессора и ячейкой памяти, но и между двумя
ячейками памяти, которые адресуются различными способами. Множество
сочетаний возможных способов адресации операндов в двухадресных командах
обусловливает наличие 13 различных форматов команд (рис. 4.36). Первый
байт команды всегда содержит код операции (КОП). Второй и третий байты
содержат либо адреса операндов, либо сам операнд.
1 | коп
2 | КОП
3 | коп
4 | КОП
5 | КОП
6 | аЮа9а8 | КОП
7 | КОП
8 | КОП
9 | КОП
10 | КОП
11 | КОП
12 | КОП
13 I КОП
#d
ad
bit
rel
a7..
. a0
ad
ad
ads
#d
bit
ad16h
#d16h
#d
rel
add
rel
rel
ad16l
#d16l
Рис. 4.36. Форматы команд MK MCS-51
338
СЕМЕЙСТВО МК MCS-51 ФИРМЫ "INTEL"
Команды передачи данных. Команды этой группы осуществляют перемещение
данных между ячейками памяти и регистрами центрального процессора, а
также между двумя ячейками памяти, минуя регистры центрального процессора
(табл. 4.7). Все команды данной группы не модифицируют флаги результата,
за исключением команд загрузки регистра признаков PSW и аккумулятора
(изменяется признак четности Р).
Таблица 4.7
Команды передачи данных
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки
С AC ov
MOV А, ' MOV A, Rn MOV A, #d8 MOV A, ad MOV A, @Ri Загрузить в ACC
константу или содержимое ячейки памяти А <= (М) А <= (Rn) А <= (d8) А <=
(ad) А <= "га" REG IMM DIR IDIR - - -
MOV *,A MOV Rn, A MOV ad, A MOV @Ri, A Переслать содержимое АСС в ячейку
памяти (М) <= А (Rn) "= А (ad) "= А "га" "= А REG DIR IDIR -
- -
MOV V MOV Rn, #d8 MOV Rn, ad MOV ad, Rn MOV ad, #d8 MOV ad, @Ri MOV @Ri,
#d8 MOV @Ri, ad MOV add, ads Переслать данные из одной ячейки памяти в
другую (M)d"."n.ton<= (Rn) <= (d8) (Rn) <= (ad) (ad) <= (Rn) (ad) <=
(d8) (ad) <= "га" ((Ri)) <= (dB) "Ri" "= (ad) (ad) <= (ad) REG/IMM
REG/DIR DIR/REG DIR/IMM DIR/ID IR ID IR/IMM ID IR/DIR DIR/DIR -
-
MOV MOV DPTR, #d16 Загрузить двухбайтовый регистр DPTR константой
DPTR<= d16 IMM - - -
MOVC MOVC A, @A+DPTR MOVC A, @A+PC Переслать данные из памяти
программм в АСС A "= (M) At= (A)+(DPTR)) PC <= (PC)+1 А "= "А)+(РС"
IDIR IDIR - - -
MOVX A,* MOVX A, @Ri MOVX A, @DPTR Переслать данные из внешней
памяти данных в АСС A <= (M) A <= ((Ri)) A "= (DPTR) IDIR IDIR -
- -
MOVX \ A MOVX @Ri, A MOVX @DPTR, A Переслать данные из АСС во
внешнюю память данных (M)<= A IDIR IDIR - - -
PUSH PUSH ad Загрузить в стек (SP) <= (SP)+1 (SP) <= (ad) INH -
- -
POP POP ad Извлечь из стека (ad) <= (SP) (SP) "= (SP)-1 INH - -
-
339
8-РАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ
Продолжение табл. 4.7
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки
С АС OV
ХСН ХСН A, Rn ХСН A, ad ХСН A, @Ri Обмен аккумулятора с ячейкой
памяти (А) <=5. (М) (А) <=* (Rn) (А) <=> (ad) (А) <=> ((Ri)) REG
DIR IDIR - - -
XCHD XCHD A, @Ri Обмен младшей тетрады АСС с младшей тетрадой ячейки
памяти (А)0_з "=* ((Ri))"_3 IDIR - - -
В зависимости от способа адресации и места расположения операнда можно
выделить девять типов операндов, между которыми возможен обмен. Граф
возможных операций передачи данных показан на рис. 4.37. Аккумулятор АСС
представлен на этом графе отдельной вершиной, поскольку многие команды
используют неявную адресацию аккумулятора (символ А присутствует в
мнемонике команды, в то время как поле адреса аккумулятора отсутствует).
Команды передачи данных допускают также прямую адресацию аккумулятора.
Для этого его абсолютный адрес OEOh должен быть указан во втором или
третьем байтах команды. Косвенная адресация по указателям @R0 и @R1
распространяется только на адресное пространство 00h...7Fh внутреннего
ОЗУ. Регистры специальных функций и регистры центрального процессора
(диапазон адресов 8Fh - OFFh) не могут быть адресованы косвенно.
Следует обратить внимание, что команды обращения к ячейкам внешней памяти
(MOVX) и команды чтения из памяти программ (MOVC) отличаются от команд
обмена с внутренним ОЗУ. Такое положение дел полностью соответствует
теории: для обращения к ячейкам с одинаковыми адресами, но в разных
массивах памяти должны быть сгенерированы разные сигналы управления.
Следовательно, должны использоваться разные команды.
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed