Знаем и в частности в книге П.Абеля читаем: ============================================ Номер порта можно указывать статически или динамически: 1. Статическое указание порта возможно при непосредственном использовании значения от 0 до 255: Ввод: IN AL, порт# ;Ввод одного байта Вывод: OUT порт#,АХ ;Вывод одного слова 2. Динамическое указание порта устанавливается в регистре DX от 0 до 65535. Этот метод удобен для последовательной обработки нескольких портов. Значение в регистре DX в этом случае увеличивается в цикле на 1. Пример ввода байта из порта 60Н: MOV DX,60H ;Порт 60Н (клавиатура) IN AL,DX ;Ввод байта ============================================= Собственно вопрос - А почему именно так? Т.е. почему от 0..255 можно непосредственно в команде, а больше нельзя?
1 байт отведен на непосредственные данные или 1 байт - постбайт, в котором указывается, что используется именно dx, а в dx влезает 2 байта уже