
лабораторная работа / лабораторные работы по ASSAMBLER / Лаб №4 Вар №14
.docСаратовский Государственный Технический Университет
Балаковский Институт Техники Технологии и Управления
Кафедра: УИТ
Специальность: УИТ
Лабораторная работа №4
По СПО
Вариант №14
Выполнил:
Студент гр. УИТ-33
Принял:
Балаково2004г.
Цель работы: ознакомление и изучение цепочных команд, используемых для обработки символьных данных.
Задание: Найти в строке символ «m» и заменить его символом «&», а символ «n» на « », обеспечив ввод символов с клавиатуры и вывод измененной строки на экран.
Решение.
wert segment
assume cs:wert;ss:wert;ds:wert;es:wert
org 100h
beg: jmp as
titl db 12 dup (' ')
as proc wear
call vvod
;call pimpa
;call ochistka
lea di,titl
mov cx,12
b2: mov al,'m'
repne scasb
jne b3
dec di
mov al,'&'
stosb
b3:
lea di,titl
mov cx,18
mov al,'n'
repne scasb
jne b4
dec di
mov al,' '
stosb
loop b2
b4:
call vivod
call kursor_vivod
vivod proc
mov ah,40h
mov bx,01
mov cx,12
lea dx,titl
int 21h
ret
vivod endp
vvod proc
mov ah,3fh
mov bx,00
mov cx,20
lea dx,titl
int 21h
ret
vvod endp
kursor_vivod proc
mov ah,02
mov bh,00
mov dx,0000
int 10h
ret
kursor_vivod endp
ochistka proc
mov ax,0600h
mov bh,07
mov ax,0000
mov dx,184fh
int 10h
ret
ochistka endp
pimpa proc
mov ah,00; ввод с клавиатуры
int 16h;
cmp al,00; функциональная клавиша ?
jne ext; нет - выход
cmp ah,1ch; скэн-код для 'Enter'
jne ext; нет - выход
mov ah,02
mov bh,00
mov dx,0000; координаты строка,столбец
int 10h
ext: ret
pimpa endp
ends
endp
end beg