Ассемблер и программирование для IBM PC



       

ГЛАВА 8. Экранные операции I: Основные свойства - часть 2


Ассемблер для IBM PC. Глава 8 173

ъ уменьшает указатель стека на 2 и заносит в вершину стека содержимое флагового регистра; ъ очищает флаги TF и IF; ъ уменьшает указатель стека на 2 и заносит содержимое регистра CS в стек; ъ уменьшает указатель стека на 2 и заносит в стек значение командного указателя; ъ обеспечивает выполнение необходимых ддействий; ъ восстанавливает из стека значение регистра и возвращает управление в прерванную программу на команду, следующую после INT.

Этот процесс выполняется полностью автоматически. Необхо димо лишь определить сегмент стека достаточно большим для записи в него значений регистров. В данной главе рассмотрим два типа прерываний: команду BIOS INT 10H и команду DOS INT 21H для вывода на экран и ввода с клавиатуры. В последующих примерах в зависимости от требований используются как INT 10H так и INT 21H.

УСТАНОВКА КУРСОРА ------------------------------------------------------------

Экран можно представить в виде двумерного пространства с адресуемыми позициями в любую из которых может быть установ лен курсор. Обычный видеомонитор, например, имеет 25 строк (нумеруемых от 0 до 24) и 80 столбцов (нумеруемых от 0 до 79). В следующей таблице приведены некоторые примеры положений курсора на экране:

-------------------------------------------------------- Дес. формат Шест.формат -------------- -------------- Положение строка столбец строка столбец -------------------------------------------------------- Верхний левый угол 00 00 00 00 Верхний правый угол 00 79 00 4F Центр экрана 12 39/40 00 27/28 Нижний левый угол 24 00 18 00 Нижний правый угол 24 79 18 4F --------------------------------------------------------

Команда INT 10H включает в себя установку курсора в любую позицию и очистку экрана. Ниже приведен пример установки курсора на 5-ую строку и 12-ый столбец:

MOV AH,02 ;Запрос на установку курсора MOV BH,00 ;Экран 0 MOV DH,05 ;Строка 05 MOV DL,12 ;Столбец 12 INT 10H ;Передача управления в BIOS

Ассемблер для IBM PC. Глава 8 174




Содержание  Назад  Вперед