АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Пример 6. Операнд a находится в AX

Читайте также:
  1. I. 1.1. Пример разработки модели задачи технического контроля
  2. IV. ТИПОВОЙ ПРИМЕР РАСЧЕТОВ.
  3. X. примерный перечень вопросов к итоговой аттестации
  4. Б2. Пример №2
  5. Буду на работе с драконом примерно до 21:00.
  6. Булевы функции. Способы задания. Примеры.
  7. В нашем примере каждый доллар первоначального депозита обеспечил 5 дол. средств на банковских счетах.
  8. В некоторых странах, например в США, президента заменяет вице-
  9. В примере
  10. В странах Востока (на примере Индии и Китая)
  11. Вания. Одной из таких областей является, например, регулирова-
  12. Вариационные задачи с подвижными границами. Пример в теории управления.

Операнд a находится в AX. Операнд b является элементом массива, первый элемент которого помечен меткой MAS, а положение операнда b в массиве определяется содержимым регистра BX (рис. 7.1).


Рис. 7.1. Организация доступа к операнду при регистровой относительной адресации

Символическая запись команды:

ADD AX,MAS[BX]

При ассемблировании программы метке ставится в соответствие смещение относительно начала сегмента. Таким образом, операнд b будет определяться в данном случае с помощью регистровой относительной адресации (суммирование значения смещения и содержимого регистра).

Пусть начало массива MAS имеет смещение в 3000h байтов от начала сегмента DS. Тогда машинный код команды будет иметь вид:

 

Если перед выполнением команды (AX)=1234, (BX)=0074, [3474]=E6, [3475]=64, (IP)=0102, то результатом будет: (AX)=771A, (IP)=0106.

Если начало массива располагается со смещением 70h байтов от начала сегмента DS, то программа Ассемблера сформирует более короткий машинный код команды:

 

Если исходное состояние элементов хранения совпадает с предыдущим, за исключением (BX)=3004, то и результат будет таким же, за исключением (IP)=0105.


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 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)