з.ы. Лучше маленькие в большие, хотя там особой разницы нету.
з.з.ы. Дело в том что в русском алфавите между а..п и р..я есть разрыв в 48 позиций, и этот разрыв нужно учесть. В общем вот что смог:
Код: Выделить всё
code segment
assume cs: code, ds:data, ss: stek
prog PROC near
cmp al,'А'
jb ext
cmp al,'П'
ja ext
cmp al,'Р'
jb ext
cmp al,'Я'
ja ext
sub al,'А'
add al,'а'
ext:
ret
prog ENDP
Bust PROC near
mov di,si
conv:
lodsb
cmp al,0h
je eend
call prog
stosb
jmp conv
eend:
ret
Bust ENDp
start:
mov AX, data
mov DS, AX
lea dx,[strr]
mov ax,0h
mov ah,0Ah
int 21h
mov si,dx
mov dx, offset strr
mov ah,9h
int 21h
mov ax,4c00h
int 21h
code ends
data Segment
sstop db '$'
newline db 10
strr db 'check'
data ends
stek segment stack
dw 10 dup (?)
stek ends
end Start
Совсем забыл сказать... Процессор 8086, использую TASM и TLINK. Другое пока нам запрещено
