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


       

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


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

в область ввода будут приняты символы "ngе", символ перевода коретки и символ новой строки, в регистре AX будет установ лено значение 05. Обе операции ввода являются вполне нормаль ными и флаг CF будет очищен.

Первый INT: PC Excha AX = 08 Второй INT: ngе,0D,0A AX = 05

Программа может определить факт ввода законченного текста, если а) в регистре AX получится значение меньше, чем в регистре CX или б) если содержимые AX и CX равны, но последние два символа в области ввода - 0D и 0A. Встроенные в DOS проверки по функции 0AH для ввода с клавиатуры имеют более мощные средства. Их выбор для исполь зования в программах является предпочтительным.

Упражнение: Ввод данных

Выполним упражнение в котором можно проследить операцию ввода c клавиатурры с помощью отладчика DEBUG. Предполагае мая программа позволяет вводить до 12 символов, включая символы конца каретки и конца строки. Загрузите DEBUG и после вывода на экран приглашения введите A 100 для ввода ассемблерных команд, начиная c адреса 100. Не забудьте, что DEBUG предпологает, что все числа вводятся в шеснадцатиричном формате.

100 MOV AH,3F 102 MOV BX,00 105 MOV CX,0C 108 MOV DX,10F 10B INT 21 10D JMP 100 10F DB ' '

Программа устанавливает регистры AH и BX для запроса на ввод c клавиатуры, заносит максимальную длину ввода в ре гистр CX и загружает в регистр DX значение 10F - область DB в конце программы. В эту область будут помещаться вводимые символы. Когда вы наберете все команды, нажмите еще раз Return. С помощью команды U 100,108 выполните дисассемблирование программы для проверки. Затем используйте команды R и T для трассировки четырех команд MOV. Остановившись по адресу 10B, введите G 10D для выполнения команды INT (входить в BIOS не следует). Теперь отладчик позволит ввести данные, завершаемые клавишей Return. Проверьте содержимое регистра AX, состояние флага CF и используя команду D 10F, просмот рите введенные данные в памяти. Для завершения работы введите команду Q.

ИСПОЛЬЗОВАНИЕ СИМВОЛОВ ВОЗВРАТА КАРЕТКИ, КОНЦА СТРОКИ И ТАБУЛЯЦИИ ДЛЯ ВЫВОДА НА ЭКРАН

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

------------------------------------------------------------

Ассемблер для IBM PC. Глава 9 200




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