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

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

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

равенства. Увеличить на 1 адрес в регистре Н:Х.
Индексная адресация по указателю стека со смещением в 1 байт. Команды с
данным типом адресации имеют длину 3 байта. Первый и второй байты
содержат код операции, а третий байт - беззнаковую константу смещения. В
определении адреса операнда участвует указатель стека SP, который
содержит код базового адреса. Центральный процессор вычисляет адрес
операнда путем сложения содержимого указателя стека SP с кодом смещения.
После сложения адрес операнда представляется в двухбайтовом формате.
Примеры.
ADD opr.SP ; Запись команды ADD с адресацией по указателю стека со
смещением в один
; байт в общем виде.
ADD $80,SP ; Сложить содержимое аккумулятора АСС с содержимым ячейки
памяти,
; адрес которой равен (SP)+128.
LDA $1 ,SP ; Загрузить в аккумулятор АСС содержимое ячейки памяти, адрес
которой
; равен (SP)+1.
Индексная адресация по указателю стека со смещением в 2 байта. Команды
сданным типом адресации имеют длину 4 байта. Первый и второй байты
содержат код операции, а третий и четвертый байты - двухбайтовую
беззнаковую константу. В определении адреса операнда участвует указатель
стека SP. Центральный процессор вычисляет адрес операнда путем сложения
двухбайтового кода смещения с содержимым указателя стека SP. После
сложения адрес операнда представляется в двухбайтовом формате.
Мнемонические обозначения команд с индексной адресацией со смещениями 1 и
2 байта совпадают. Однако не следует беспокоиться об этом при написании
программы. В процессе трансляции программа Ассемблер самостоятельно
подставит код необходимой операции, проанализировав численное значение
адреса орг. Примеры.
ADD opr.SP ; Запись команды ADD с адресацией по указателю стека со
смещением
; в один байт в общем виде.
ADD $0100,SP ; Сложить содержимое аккумулятора АСС с содержимым
ячейки памяти,
; адрес которой равен (SP)+512.
LDA $01 FF,SP ; Загрузить в аккумулятор АСС содержимое ячейки памяти,
адрес которой
; равен (SP)+1023.
Относительная адресация. Относительная адресация применяется только в
командах условных переходов, которые используются для организации
ветвления программ. Команды условных переходов имеют двухбайтовый формат.
Первый байт содержит код операции, а второй - смещение адреса следующей
команды относительно адреса текущей команды в целочисленном формате со
знаком. Диапазон возможных кодов смещения: от -128 до +127.
369
в-РАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ
Если условие, заданное типом используемой команды условного перехода,
выполняется, то адрес следующей команды центральный процессор вычисляет
путем сложения текущего адреса с кодом смещения. Если условие не
выполняется, то МК переходит к выполнению следующей команды.
При написании программ нет необходимости вычислять абсолютные коды
смещения для команд условного перехода. Достаточно указать лишь метку,
численное значение кода смещения вычислит программа Ассемблер.
Примеры.
JZ 1аЫе1 ; Перейти по метке 1аЫе1, если результат операции
равен 0.
4.3.3. СИСТЕМА КОМАНД МК СЕМЕЙСТВА НС08
Система команд CPU08 включает 90 инструкций.
Длина кода команды в байтах определяется типом инструкции и способом
адресации. Команды CPU08 могут иметь однобайтовый, двухбайтовый,
трехбайтовый и четырехбайтовый формат. Однобайтовыми командами в
соответствии с теорией являются команды с неявной адресацией (INH) и с
индексной адресацией без смещения (IX: LDA, х). В двухбайтовом формате
представлены команды с непосредственной (IMM: LDA #орг), прямой (DIR: LDA
орг) и индексной с однобайтовым смещением (1X1: LDA орг,х) адресацией.
Трехбайтовый формат имеют команды с прямой расширенной адресацией (EXT:
LDA орг), индексной со смещением в два байта адресацией (IX2: LDA орг,х)
и адресацией по указателю стека со смещением в один байт (SP1: LDA
opr,SP). Четырехбайтовыми командами являются только команды с адресацией
по указателю стека со смещением в два байта (SP2: LDA opr.SP).
Множество команд делится на 6 традиционных групп, каждая из которых
рассмотрена ниже. Распределение команд по группам приведено в табл. 4.22.
Таблица 4.22
Распределение команд Ассемблера CPU08 по типовым группам
Группа команд Число инструкций в фуппе
Команды загрузки и пересылки 13
Арифметические команды 14
Логические команды и команды сдвигов 15
Команды битового процессора 6
Команды управления ходом вычислительного процесса 40
Команды перехода к режимам пониженного потребления 2
Команды загрузки и пересылки данных. Команды этой группы осуществляют
перемещение данных между ячейками памяти и регистрами центрального
процессора (табл. 4.23).
370
СЕМЕЙСТВО МК НС08 ФИРМЫ "MOTOROLA"
Таблица 4.23
Команды загрузки и пересылки данных
Мнемокод Операция Выполняемое действие Способ адресации Влияние на
признаки
V н I N z с
LDA UDA #орг LDAopr LDA opr LDA opr.x LDA opr.x LDA ,x LDA opr.SP LDA
opr.SP Загрузить в ACC константу или содержимое ячейки памяти А <=
(М) IMM DIR EXT IX SP1 SP2 0 I I
Предыдущая << 1 .. 203 204 205 206 207 208 < 209 > 210 211 212 213 214 215 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed