ВУЗ:
Составители:
35
int 21h
mov ah,4ch
int 21h
end
3.3.5 Составить программу преобразования символьной строки abcdefgi
в строку IGFEDCBA.
3.3.6 Составить программу преобразования двузначного символьного
числа в двоичный формат и программу преобразования двоичного формата в
ASCII-формат, используя программные фрагменты в примерах 3.2 и 3.3.
Пример 3.1 - Напишем программу преобразования символьного числа в
двоичное число, полагая, что (cx) = 10, (si) = адрес символьной строки, по ад-
ресу "adr1" в сегменте данных находится преобразуемое число, по адресу
"adr2" будет помещено двоичное число (результат), адреса " adr3" и " adr4" ис-
пользуются для хранения числа символов и множителя соответственно, а (bx) =
число обрабатываемых символов.
mov cx,10
lea si,adr1-1
mov bx,adr3
a10: mov al,[si+bx]
and ax,000fh
mul ax,adr4
add adr2,ax
mov ax,adr4
mul cx
mov adr4,ax
dec bx
jnz a10
Пример 3.2 - Напишем программу преобразования двоичного числа в
символьное число, полагая, что (cx) = 10, (si) = адрес символьной строки, (ax)
= двоичное число.
b10: cmp ax,0010
jb b20
xor dx,dx
div cx
or dl,30h
mov [si],dl
dec si
jmp b10
b20: or al,30h
mov [si],al
int 21h mov ah,4ch int 21h end 3.3.5 Составить программу преобразования символьной строки abcdefgi в строку IGFEDCBA. 3.3.6 Составить программу преобразования двузначного символьного числа в двоичный формат и программу преобразования двоичного формата в ASCII-формат, используя программные фрагменты в примерах 3.2 и 3.3. Пример 3.1 - Напишем программу преобразования символьного числа в двоичное число, полагая, что (cx) = 10, (si) = адрес символьной строки, по ад- ресу "adr1" в сегменте данных находится преобразуемое число, по адресу "adr2" будет помещено двоичное число (результат), адреса " adr3" и " adr4" ис- пользуются для хранения числа символов и множителя соответственно, а (bx) = число обрабатываемых символов. mov cx,10 lea si,adr1-1 mov bx,adr3 a10: mov al,[si+bx] and ax,000fh mul ax,adr4 add adr2,ax mov ax,adr4 mul cx mov adr4,ax dec bx jnz a10 Пример 3.2 - Напишем программу преобразования двоичного числа в символьное число, полагая, что (cx) = 10, (si) = адрес символьной строки, (ax) = двоичное число. b10: cmp ax,0010 jb b20 xor dx,dx div cx or dl,30h mov [si],dl dec si jmp b10 b20: or al,30h mov [si],al 35
Страницы
- « первая
- ‹ предыдущая
- …
- 33
- 34
- 35
- 36
- 37
- …
- следующая ›
- последняя »