Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Прямая или косвенная адресация




Регистровая адресация

Непосредственная адресация

По синтаксису команды микропроцессор определяет, какой адресный режим выбран. Например, в командах MOV АН.ОО MOV AL.04

значение операнда находится в самой команде. Здесь ^регистр АН обнуляется (0000), а в регистр AL загружается двоичный код 0100. Микропроцессор 80386 также допускает 32-разрядные операнды. Следующий пример иллюстрирует перемещение значения 32-разрядного операнда-источника в регистр ЕАХ (нуль должен находиться перед любым шестнадцатеричным числом):

MOV ЕАХ, OABCDFFFFH

При непосредственной адресации значения всех операндов при необходимости подвергаются знаковому расширению: значение старшего разряда операнда переме­щают в ту же позицию, что и у операнда-приемника. Например, команда

MOV АХ.302

5ерет 10-разрядный двоичный эквивалент числа 302,0100101110, и расширяет его По 16-разрядной величины операнда-приемника, записывая нулевой разряд знака» старший разряд регистра АХ:0000000100101110.

Знаковое расширение применяется также для 8-разрядного операнда-источника и операнда-приемника. Например:

MOV AL,-40 Эта команда расширяет 7 разрядов числа 40, 1101000, до 8 разрядов -40, 11101000.

Непосредственный операнд может быть выражением, преобразуемым в число:

MOV EDX, OFFSET mydata + 50Н

В режиме регистровой адресации значение операнда-источника предварительно запоминается в одном из внутренних регистров микропроцессора 80386. Это зна­чение может составлять 8, 16 или 32 разряда. Микропроцессор определяет размер операнда по имени регистра. Например:

MOV ЕВХ, ЕАХ

означает, что микропроцессор берет 32-разрядное значение операнда-источника (регистр ЕАХ) и перемещает его в 32-разрядный регистр ЕВХ. В этом режиме используются также 8- и 16-разрядные регистры: MOV DS, АХ MOV DL, AL

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

Семь оставшихся режимов адресации требуют большего времени выполнения, так как микропроцессору приходится вычислять адрес операнда по адресу сегмента, смещению сегмента и, возможно, по значению регистра базы или индексного ре­гистра. Полученный таким образом адрес называется исполнительным адресом опе­ранда, или ЕА.

Сравним режимы прямой и косвенной адресации. В случае прямой адресации значение регистра, переменной, метки, константы или выражения, преобразуемого в константу, могут использоваться для получения исполнительного адреса (смеще­ние относительно базы сегмента). Косвенная адресация включает в себя четыре следующих режима адресации:

косвенная регистровая, относительная, индексная, относительная индексная.

В этом случае косвенный адрес вычисляется из адреса ячейки памяти, указан­ной регистром базы или индекса, и может, кроме того, включать в себя необяза­тельное перемещение. Для микропроцессора 80386 адресные смещения могут быть байтами, словами, двойными словами или словами тройной длины.




Поделиться с друзьями:


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


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



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




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