Как я могу загрузить / сохранить данные на периферии, адрес которой больше 2 ^ 16 с инструкциями IN / OUT.Когда я использую инструкцию IN / OUT, скажем, OUT DX, AL
, я знаю, что регистр сегмента DX не используется, поэтому я могу получить доступ только к первым 2 ^ 16 адресам (потому что длина DX составляет 16 бит).
Одно из моих устройств находится по адресу 18000h
.Как я могу достичь этого?Пространство памяти / ввода-вывода перекрывается (вывод M / IO не используется), так что можно сказать что-то вроде
MOV BX, 18000h
MOV [BX], AL
Я очень новичок в такого рода вещах, поэтому я очень признателенпомощь от старых программистов, использующих ядро, asm, если кто-нибудь из вас здесь :) Спасибо.