КАТЕГОРИИ: Архитектура-(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.
Дата добавления: 2014-01-03; Просмотров: 482; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |