Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Индексные методы адресации

Система команд и методы адресации

Способы адресации. МК выполняет набор операций над операндами, размещенными в регистрах A, X и памяти. Команды имеют длину от 1 до 4 байтов. Для выборки операнда используются следующие способы адресации.

Регистровая (операнд располагается в регистре A или X).

INCA; А+1→А

Непосредственная (8-разрядный операнд задается во втором байте команды).

Пример: сложить непосредственные данные #$03 и #$F1

LDA #$03;

ADD #$F1;

LDHX #$F100.

Прямая (8- или 16-разрядный адрес операнда задается во втором и третьем байте команды). При прямой адресации с 8-разрядным адресом обращение возможно только к 256 начальным позициям адресного пространства, в котором располагаются регистры интерфейсных и периферийных модулей и часть ОЗУ.

укороченная:

ADD $31; ячейка (31) + (А) → А, работают с адресами (00-FF);

расширенная:

LDX $01E1; из ячейки с адр. $01E1 переслать информ. в регистр Х.

 

- индексная (адресом операнда служит содержимое регистра H:X) LDA,Х; Команда однобайтовая, адрес находится в HX.

- индексная со смещением в один байт (адрес операнда образуется сложением содержимого регистра H:X и 8-разрядного смещения, заданного во втором байте.

INC $D8,X; увеличивается на 1 содержимое ячейки памяти, адрес;которой получается сложением содержимого Н:Х и D8. При;индексной адресации смещение является числом без знака.

- индексная со смещением в два байта (адрес операнда образуется сложением содержимого регистра H:X и 16-разрядного смещения, заданного во втором и третьем байте команды); 3 байта.

ADD $0200, X; ((Адрес ячейки = (HX+0200))

 

Индексная адресация и прямая адресация с 16-разрядным адресом позволяют обращаться к любой позиции адресного пространства, однако при этом необходимо, чтобы значение адреса не превышало $FFFF.

 

- индексная с пост - инкрементом (используется только в командах MOV и CBEQ - адресом операнда служит содержимое регистра

H:X, которое после выполнения команды автоматически увеличивается на 1);

MOV $68, X+; за писать данные из ячейки пам. с адресом $68 в яч.;памяти, адрес которой нах-ся в Н:Х, затем увеличить на 1 адрес в Х.

- индексная со смещением в один байт и пост-инкрементом (используется только в команде CBEQ - адрес операнда образуется сложением содержимого регистра H:X и 8-разрядного смещения, заданного во втором байте команды, после выполнения команды содержимое регистра H:X автоматически увеличивается на 1);

 

CBEQ $80, X+, m1; Сравнить А и содержимое ячейки памяти, адрес;которой (HX)+128 и отправить по метке m1 в случае равенства.;Увеличить содержимое индексного регистра на единицу.

 

- индексная по указателю стека со смещением (адрес операнда образуется сложением содержимого регистра SP и 8- или 16-разрядного смещения, заданного во втором и третьем байте команды); 3-4 байта,

 

LDA $80, SP;

LDA $01FF,SP;

 

-- относительная (используется только в командах ветвления - адрес команды образуется сложением текущего содержимого PC и заданного во втором байте команды 8-разрядного смещения, которое является числом со знаком).

При относительной адресации возможен переход к командам, расположенным в пределах 127 позиций ниже или выше очередной команды программы. 2- байтовая команда.

BCS M2; перейти по метке М2, если бит С установлен,

;(PC) + 2 + М2.

 

<== предыдущая лекция | следующая лекция ==>
Лекция 9. Процессорный модуль. Система команд и методы адресации МК | Типы команд
Поделиться с друзьями:


Дата добавления: 2014-01-03; Просмотров: 482; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.