Изучение архитектуры и системы команд INTEL-совместимых микропроцессоров. Коршунов А.Д. - 32 стр.

UptoLike

Составители: 

32
2.4. Дисплей и порты ввода-вывода
Виртуальный дисплей находится на вкладке «Ввод-вывод». Дисплей
устроен подобно реальному дисплею в текстовом режиме - он состоит из
отдельных позиций (знакомест) для вывода символов. Размеры виртуального
дисплея в нашей модели составляют 64 символа в ширину и 20 строк в высоту
(реальные дисплеи обычно используют другой режим - 80 символов в ширину и
25 строк
в высоту). На каждом знакоместе может быть отображён ровно один
символ (знак) на некотором фоне, причём цветом символа и фона можно
управлять. Каким образом это происходит?
Информация на дисплее отображается на основе содержимого области
видеопамяти, находящейся по адресу 0003:F600 (в нашей модели; в реальных
системах этот адрес, как правило, равен B800:0000). Из видеопамяти
последовательно считываются по два байта, причём первый из них представляет
ASCII-код символа
, а второйего цвет и цвет фона под ним (атрибут). Таким
способом построчно заполняется весь дисплей.
Поскольку один байт содержит восемь бит, и для каждого символа
необходимо два цвета (цвет самого символа и цвет фона), то каждый из этих
цветов представлен четырьмя битами. Четыре бита вместе могут принимать 16
различных значений, а значит, могут обозначать максимум 16 цветов. Каждый бит
из четырех
несет свой вклад в цвет, который ими закодирован. Нулевой (младший
в группе), первый и второй биты говорят о наличии или отсутствии синей, зеленой
и красной компонент цвета соответственно. Третий бит (старший) отвечает за
яркость цвета. В Приложении 1
находится таблица всех шестнадцати значений
атрибутов.
На этой же вкладке размещаются два окна портов ввода-вывода с адресами 2
и 3. Введённую в них числовую информацию (как в шестнадцатеричном, так и в
десятичном виде) можно прочитать командами IN AL, 2 и IN AL,3. Можно также
вывести в них числовую информацию командами OUT 2,AL и OUT 3,AL. Порты с
адресами 0 и 1 используются
в нашей модели для специальных целей (см.
справочную систему AsmEd).
                                                                                  32
           2.4. Дисплей и порты ввода-вывода


    Виртуальный дисплей находится на вкладке «Ввод-вывод». Дисплей
устроен подобно реальному дисплею в текстовом режиме - он состоит из
отдельных позиций (знакомест) для вывода символов. Размеры виртуального
дисплея в нашей модели составляют 64 символа в ширину и 20 строк в высоту
(реальные дисплеи обычно используют другой режим - 80 символов в ширину и
25 строк в высоту). На каждом знакоместе может быть отображён ровно один
символ (знак) на некотором фоне, причём цветом символа и фона можно
управлять. Каким образом это происходит?
    Информация на дисплее отображается на основе содержимого области
видеопамяти, находящейся по адресу 0003:F600 (в нашей модели; в реальных
системах     этот   адрес,   как   правило,   равен   B800:0000).   Из   видеопамяти
последовательно считываются по два байта, причём первый из них представляет
ASCII-код символа, а второй – его цвет и цвет фона под ним (атрибут). Таким
способом построчно заполняется весь дисплей.
    Поскольку один байт содержит восемь бит, и для каждого символа
необходимо два цвета (цвет самого символа и цвет фона), то каждый из этих
цветов представлен четырьмя битами. Четыре бита вместе могут принимать 16
различных значений, а значит, могут обозначать максимум 16 цветов. Каждый бит
из четырех несет свой вклад в цвет, который ими закодирован. Нулевой (младший
в группе), первый и второй биты говорят о наличии или отсутствии синей, зеленой
и красной компонент цвета соответственно. Третий бит (старший) отвечает за
яркость цвета. В Приложении 1 находится таблица всех шестнадцати значений
атрибутов.
    На этой же вкладке размещаются два окна портов ввода-вывода с адресами 2
и 3. Введённую в них числовую информацию (как в шестнадцатеричном, так и в
десятичном виде) можно прочитать командами IN AL, 2 и IN AL,3. Можно также
вывести в них числовую информацию командами OUT 2,AL и OUT 3,AL. Порты с
адресами 0 и 1 используются в нашей модели для специальных целей (см.
справочную систему AsmEd).