. .model small
.stack 100h
.data
str1 label byte
max1 db 255
min1 db ?
str11 db 255 dup(?)
str db 1 dup(?)
str_A db 'A'
exi dw 00h
msg1 db 'vedite deriktoriy: $'
msg2 db 0ah,0dh,'vedite imya fajla: $'
msg3 db 0ah,0dh,'vedite stroky: $'
msg4 db 0ah,0dh,'rezyltat: $'
k dw 0
descr dw 0
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
mov ax,0003h
int 10h
lea dx,msg1
call write
;vvesti_deriktoriyu
mov ah,0ah
lea dx,str1
int 21h
lea si,str11
xor ax,ax
mov al,min1
add si, ax
mov ax,00h
mov [si],ax
;ystanovit disk
lea si,str11
lodsb
or ax,01100000B
sub al,61H
mov ah,0eh
mov dl,al
int 21h
;sozd derictoriu
mov ah,3Bh
lea dx,str11
int 21h
lea dx,msg2
call write
;name file
mov ah,0ah
lea dx,str1
int 21h
lea si,str11
xor ax,ax
mov al,min1
add si, ax
mov ax,00h
mov [si],ax
;sozdat fail
mov ah,3CH
mov cx,00
lea dx,str11
int 21h
mov descr,ax
;vvesti stroky
lea dx,msg3
call write
mov ah,0ah
lea dx,str1
int 21h
lea si,str11
xor ax,ax
mov al,min1
add si, ax
mov ax,00h
mov [si],ax
;zapisat v fail
xor cx,cx
mov ax,4000h
mov bx,descr
mov cl,min1
lea dx,str11
int 21h
;vuvod
mov ah,09h
lea dx,msg4
int 21h
mov ah,42h
mov al,00
mov bx,descr
mov cx,00
mov dx,00
int 21h
;--------------------------
next: xor cx,cx
mov ax,3f00h
mov bx,descr
mov cl,1
lea dx,str
int 21h
inc k
cmp ax,00
je exit
cmp str,'a'
jne next
dec k
mov ah,42h
mov bx,descr
mov al,00
mov cx,00
mov dx,k
int 21h
inc k
mov ah,40h
mov bx,descr
mov cx,1
lea dx,str_A
int 21h
jmp next
exit:
;prochitat fail
mov ah,42h
mov bx,descr
mov al,00
mov cx,00
mov dx,00
int 21h
mov ah,3fh
mov bx,descr
mov cl,min1
lea dx,str11
int 21h
lea si,str11
xor ax,ax
mov al,min1
add si, ax
mov ax,'$'
mov [si],ax
mov ah,09h
lea dx,str11
int 21h
;------zacrut fail---------
mov ax,3e00h
mov bx,descr
int 21h
mov ax,0800h
int 21h
mov ax,4c00h
int 21h
write proc
mov ah,09h
int 21h
ret
write endp
end start
(ASM) Програма, делающая замены символов
- создавала директорию
- в этой директории создавала текстовый файл
- ввод ряда символов, которые будут записываться в этот файл
- обработка файла : заменяла в файле все символы "а" на "А"
- вывод результата обработки файла.
Короче вот что я написал, но у меня куча ошибок и не работает...
Код: