Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Desktop / Типы программ ввода с клавиатуры и вывода символов на экран

.doc
Скачиваний:
9
Добавлен:
20.03.2015
Размер:
29.18 Кб
Скачать

Программа типа ЕХЕ

1. Вывод строки

; hello.asm

; Выводит на экран сообщение "Hello World!" и завершается

.model small ; модель памяти, используемая для ЕХЕ

.stack 100h ; сегмент стека размером в 256 байт

.code

start: mov ax,DGROUP ; сегментный адрес строки message

;mov ax,@data можно использовать предопределенную

; метку @data

mov ds,ax ; помещается в DS

mov dx,offset message ; в DX адрес начала строки

mov ah,9

int 21h ; функция DOS "вывод строки"

mov ax,4C00h

int 21h ; функция DOS "завершить программу"

.data

message db "Hello World!",0Dh,0Ah,'$'

end start

Программа типа COM

2. Выводит посимвольно

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

;

.model tiny

.code

org 100h ; начало СОМ-файла

start:

mov ex,256 ; вывести 256 символов

mov dl,0 ; первый символ - с кодом 00

mov ah,2 ; номер функции DOS "вывод символа"

cloop: int 21h ; вызов DOS

inc dl ; увеличение DL на 1 - следующий символ

test dl,0Fh ; если DL не кратен 16,

jnz continue_loop ; продолжить цикл,

push dx ; иначе: сохранить текущий символ

mov dl,0Dh ; вывести CR (возврат каретки)

int 21h

mov dl,0Ah ; вывести LF (перевод строки)

int 21h

pop dx ; восстановить текущий символ

continue_loop:

loop cloop ; продолжить цикл

ret ; завершение СОМ-файла

end start

3. Считывание строки с клавиатуры

mov dx,offset buffer

mov ah,0Ah

int 21h ; считать строку символов в буфер

4. Считывание символа с клавиатуры

mov ah,08h ; считать символ с клавиатуры в AL

int 21h ; без эха, с ожиданием, с проверкой на

; Ctrl-Break