Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metodichka_lab__rab_spo.doc
Скачиваний:
14
Добавлен:
05.09.2020
Размер:
433.66 Кб
Скачать

2.2. Вывод на экран средствами bios

Средства вывода на экран реализуются драйвером BIOS, программное обращение к которому осуществляется с помощью прерывания 10h. При работе в текстовом режиме обычно используются следующие функции драйвера:

02h - установить позицию курсора;

03h - прочитать позицию курсора;

05h - установить видеостраницу;

06h - прокрутить вверх экран;

07h - прокрутить вниз экран;

08h - прочитать символ и атрибут в позиции курсора;

09h - вывести символ и атрибут в позицию курсора;

0Ah - вывести символ в позицию курсора;

0Eh - вывести символ в режиме телетайпа;

10h, подфункция 10h - переключить бит мерцание/яркость;

13h - вывести строку в режиме телетайпа.

2.2.1. Установка позиции курсора

AH = 02. Эта функция устанавливает курсор в любую позицию на экране в соответствии с координатами строки и столбца. Номер страницы обычно равен 0, но может иметь значение от 0 до 3 при 80 столбцах на экране:

MOV AH,02 ; Установить положение курсора

MOV BH,00 ; Страница 0

MOV DH, строка ; Номер строки

MOV DL, столбец ; Номер столбца

INT 10h ; Вызвать BIOS

2.2.2. Чтение текущей позиции курсора

AH = 03. Прикладная программа может определить положение курсора на экране (строку и столбец) следующим образом:

MOV AH,03 ; Определить положение курсора

MOV BH,00 ; Страница 0

INT 10h ; Вызвать BIOS

После возврата из прерывания регистр DH будет содержать номер стоки, а регистр DL - номер столбца.

2.2.3. Выбор активной страницы

AH = 05. В текстовом режиме с форматом экрана 80х25 устанавливается до 4 страниц (от 0 до 3), а для формата 40х25 – до 8 страниц (от 0 до 7):

MOV AH,05h ; Установить активную страницу

MOV AL,страница ; Номер страницы

INT 10h ; Вызвать BIOS

2.3.4. Прокрутка экрана вверх

AH = 06. С помощью этой функции в заданном месте экрана создаются цветные прямоугольные окна заданного размера. Если в созданные ранее окна выведен какой-либо текст, то с помощью этой функции его можно прокручивать вверх. При этом верхние строки уходят с экрана, а чистые строки вводятся снизу. Для прокрутки любого количества строк необходимо установить соответствующее значение в регистре AL. Регистр BH содержит атрибут для символов.

Значения в регистрах CX и DX определяют координаты левого верхнего и правого нижнего углов сдвигаемого окна соответственно.

Следующие команды выполняют прокрутку всего экрана на одну строку:

MOV AH,06h ; Прокрутить экран вверх

MOV AL,01 ; На одну строку

MOV BH,07 ; Атрибут нормальный: черно-белый

MOV CH,00 ; Номер строки левого верхнего угла

MOV CL,00 ; Номер столбца левого верхнего угла

MOV DH,18h ; Номер строки нижнего правого угла

MOV DL,4Fh ; Номер столбца нижнего правого угла

INT 10h ; Вызов BIOS

2.2.5. Прокрутка экрана вниз

AH = 07. Для текстового режима прокрутка экрана вниз означает удаление нижних строк и вставку чистых строк сверху. Регистр AH должен содержать 07, значения остальных регистров аналогичны функции 06 для прокрутки вверх.

Соседние файлы в предмете Системное программное обеспечение