Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[19]

AD - абсолютный адрес КСК или младший байт базового адреса; ADH:ADL - 16-битовый адрес, образованный ADH и ADL:

15

8 7

О

ADH

ADL

BAH:PCL - 16-битовый адрес, образованный ВАН и PCL: 15 8 7 0

ВАН

PCL

ЕА - исполнительный (действительный) адрес; ЕАН - старший байт действительного адреса; EAL - млаший байт действительного адреса; ADL - младший байт абсолютного адреса; ADH - старший байт абсолютного адреса.

Аккумуляторная адресация. Этот способ адресации используют четыре однобайтовые команды: ASL, LSR, ROL, ROR. Операнд, участвующий в операции, содержится в аккумуляторе.

Команды выполняются за два цикла следования импульсов основной тактовой частоты. Во время первого цикла извлекается код команды и содержимое счетчика команд PC увеличивается на единицу. Во втором цикле PC выставляет на адресную шину адрес следующей выбираемой из памяти команды. Пока текущая команда не выполнится, содержимое счетчика команд на единицу не увеличится.

Неявная адресация. При неявной адресации адрес операндов определяется самим кодом операции.

Команды, использующие этот способ адресации, можно разделить на четыре группы:

1.Команды, работающие с внутренними регистрами и флажками регистра (юетояния микропроцессора: CLC. CLD, CLI, CLV. DEX, DEY. DMY. INX, NOP. SEC, SED, SEI, TAX, TAY, TSX, TXA, TXS, TYA. Эти команды выполняются так же, как команды с аккумуляторной адресацией.

2.Команды РНА и РНР записи в стек. Эти команды исполняются за три цикла. Команда РНА записывает содержимое аккумулятора в MS (ячейка памяти, адрес которой является номером в указателе стека) и уменьшает содержимое указателя стека на единицу. Команда РНР выполняет аналогичные действия с регистром Р.

3.Команды PLA и PLP чтения из стека. Эти команды исполняются за четыре цикла импульса <0. Команда PLA увеличивает содержимое регистра S на единицу, затем считывается содержимое стека из ячейки, номер которой указан в регистре указателя стека (S), и загружается в аккумулятор. Команда РНР выполняет, аналогичные действия с регистром Р.

4.Специальный случай. Три команды BRK, RTS, RTI используют неявную адресацию, но выполняются по-разному:

RTS применяется при возвращении из подпрограммы. При ее выполнении микропроцессор читает два байта из стека и загружает младший и старший адрес PC.


При каждом чтении байта из стека содержимое указателя стека увеличивается на единицу;

BRK устанавливает грлажок В в единицу, заносит содержимое PC и Р в стек, а затем загружает в PC содержимое ячеек памяти с адресами FJFFE и FFFF, т.е.

вектора запроса прерывания INQ;

RTI является командой возврата из прерывания. По этой команде микропроцессор читает три байта из стека и заносит их соответственно в Р, PCL и РСН. Продолжение программы начинается с адреса, занесенного в PC.

Непосредственная адресация. Команды, использующие этот метод адресации, -двухбайтовые. Первый байт содержит код команды, второй - операнд (рис. 4.1). Имеется всего 11 команд, использующих непосредственную адресацию: ADC # data, AND tfdata, CMP # data. CPX # data. CPY # data. EOR # data. LDA # data, LDX # data, LDY # data, ORA # data, SBC # data.

Эти команды работают с регистрами А, X, Y. Непосредственная адресация на языке ассемблера помечается знаком #, стоящим перед непосредственным операндом (данными).

Карта памяти кропроцес-

pc

КК

Непосредствен мый операнд

Состояние выходов

Цикл]

Ч>0

5ync

R/W4

а0-а15

ъо-ю

у

X

Цикл 2

КК

"V Опердн! у- Л (данные) А

Рнс. 4.1. Непосредствен -ная адресация

Рнс. 4.2. Пряная длинная адресация (случай I)

карта памяти

pc

кк

рс+1

eal

еан

рс+2

Состояние выходов микропроцессора

Ц>0

Адрес операнда

sync

Команды : © ABC, AND, BIT, CMP, CPX, CPY, LVH, EOR, LUX, LVY, ORA, SBC, (1)STA,STX, STY

R/W

Цикл1

Цикл 2

Цикл 3

Цикл 4

л0-л15 Х~ pc X рс+) X рс+) )(eah:eal)cpcTT

Чтение адреса операнда


Прямая длинная адресация. Команды, использующие этот метод адресации, -трехбайтовые. Первый байт содержит код команды, второй байт - младший байт действительного адреса ЕА (Effective Address) операнда, а третий байт -старший байт ЕА. Этот метод адресации позволяет обратиться к любой из 65 536 ячеек памяти. Используются 23 команды, которые делятся на четыре группы.

1.Логические и арифметические команды (ADC, AND, BIT. CMP, СРХ, CPY, EOR, ORA, SBC), команды записи во внутренние регистры микропроцессора (LDA, LDX, LDY) и команды записи содержимого внутренних регистров в память (STA, STX, STY). Перечисленные 15 команд выполняются за четыре цикла (рис. 4.2).

2.Команды сдвига ASL, SLR, ROL, ROR, команда INC увеличения на единицу и команда DEC уменьшения на единицу. Эти шесть команд выполняются за шесть машинных циклов.

3.Команда JMP безусловного перехода. Команда исполняется за три цикла. Второй и третий байт содержат адрес, который нужно загрузить в PC, т.е. куда нужно перейти.

4.Команда обращения к подпрограмме JSR (рис. 4.3). Команда выполняется за шесть циклов.

Прямая короткая адресация. При этом способе команда адресуется к ячейкам нулевой страницы, т.е. к 256 байтам с 0000 по 00FF. Старший байт действительного (исполнительного) адреса всегда равен 00, а младший EAL изменяется от 00 до FF. Применение этого метода сокращает время выполнения команды. Команды, использующие этот метод, делятся на две группы.

1. Команды, выполняющиеся за три такта. Это арифметические и логические команды: ADC, AND. ВГГ, СМР. СРХ. CPY, EOR, ORA, SBC, команды загрузки регистров LDA, LDX, LDY и команды запоминания регистров STA, STX, STY.

Состояние выходов микропроцессора

ср0 SYNC

дО

Цикл 1

Цикл 2

Цикл]

А0-А15 X PC*

Цикл 4

Цикл 5

SP

Цикл 6

S

-2)7 X" МXtffMiflWX рс» X PCL

ADH.-ADL

Карта памяти

Подпрограмма

Запись РС+2 в стек

PC РС+1

"

КК=20Н

AVH:AVL

Первая команда

ADL

2 ADtt

RTS

Стек

Подпрограмма

5 S-1

Последняя команда

РСН

PCL

°~ ~1 Адрес продолжения при о выходе -

выходе из подпрограммы

Рис. 4.3. Выполнение команды JSR



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98]