Assembler для начинающих


Байт MOD R-M - часть 2


      Этот же байт используется еще  в паре специальных случаев. Если
    в команде определен  регистр, а не    адрес памяти, то  в поле режима
    помещается код  11B, чтобы сообщить  микропроцессору, что поле  R/M
    содержит  код регистра,  а не  адрес памяти.  Наконец, вы  возможно
    заметили, что в механизме работы  с байтом MOD-R/M не предусмотрена
    прямая  адресация. 8088  рассматривает как  прямую адресацию случай
    типа  [BP +  СМЕЩЕНИЕ] при      нулевом смещении.  В этом  случае поле
    смещения имеет длину два байта,  и в вычислении адреса не участвует
    ни один регистр. Из-за этого особого случая доступ к ячейке памяти,
    на      которую  указывает  регистр   BP,  в  машинном  коде  требуется
    однобайтовое поле смещения с нулевым значением. Использование в той
    же      ситуации регистров  BX, SI  и DI  не требует  байта смещения. В
    следующем пункте будет показано  еще одно различие между адресацией
    через регистры BP и BX.




- Начало -  - Назад -  - Вперед -



Книжный магазин