Как физический адрес генерируется в 8086? - PullRequest
4 голосов
/ 17 ноября 2010

В архитектуре 8086 объем памяти составляет 1 МБ и разделен на логические сегменты размером до 64 КБ каждый.

, т. Е. Имеет 20 адресные строки, таким образом, используется следующий метод:

что регистр сегмента данных смещен влево на 4 бита, а затем добавлен в регистр смещения

Мой вопрос: как мы это делаемоперация сдвига, хотя все регистры имеют только 16 бит

1 Ответ

6 голосов
/ 17 ноября 2010

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

...