Методические указания по лабораторным работам по курсу «Аппаратные средства компьютерных систем», страница 40

       CMP   AL,32   ;Проверка на управл. символ

       JL    control_code   ;если ДА, то на спец.процедуру

       CMP   AL,65   ;если символ не входит в набор

       JL    next    ;пишущей машинки, то берем

       CMP   AL,123  ;следующий

       JL    next

;--- Обработка символа в AL

       STOSB         ;Запом. символ по адресу ES:DI

       . . .

;--- Вывод символа на экран

       . . .

       JMP   next    ;Переход к следующему символу

;--- Анализ управляющих кодoв

control_code:

       CMP   AL,13   ;Код ASCII равен 13 ?

       JNE   tab     ;если НЕТ, то след.проверка

       CMP   AH,28   ;Иначе проверяем скан-код <CR>

       JNE   c_m     ;если НЕТ, то было CTRL-M

       CALL  carriage_ret  ;Обработка возврата каретки

       JMP   next    ;Переход к след. символу

c_m:   CALL  ctrl-m  ;Обработка CTRL-M

       JMP   next

tab:   CMP   AL,9    ;Проверка на табуляцию

       . . .

       CMP   AL,8

       . . .

reject: JMP next     ;Переход к след.символу

;--- Анализ расширенных кодов (2-й байт кода в AH)

extended_code:

       CMP   AH,71   ;Проверка нижней границы

       JL    reject  ;если меньше, то след. символ

       CMP   AH,81   ;Проверка верхней границы

       JL    reject  ;если больше, то след. символ

;--- AH содержит символ управления курсором, анализируем его:

       CMP   AH,72   ;"Курсор-вверх" ?

       JE    c_u     ;если ДА, то на спец. процедуру

       CMP   AH,80   ;"Курсор-вниз" ?

       JE    c_d     ;если ДА, то на спец. процедуру

       . . .

c_u:   CALL  cursor_up

       JMP   next

c_d:   CALL  cursor_down

       JMP   next

       . . .

Рисунок 5.2

5.3  Описание лабораторной установки

Персональный компьютер, совместимый с  IBM PC AT, работающий под управлением ОС MS-DOS.

Инструментальные программные средства пакета Turbo Assembler фирмы Borland: компилятор tasm.exe, компоновщик tlink.exe, отладчик td.exe.

5.4  Порядок выполнения работы