穗乃果(ほのか):从键盘输入一个8位二进制数,显示其对应的无符号与带符号十进制数

来源:百度文库 编辑:高考问答 时间:2024/04/28 17:36:01
data segment
message db"请输入8位的二进制数符“,24h
mess1 db,0dh,0ah
buf 1 db ? ? ?,0ah,0dh
mess2 db 0ah,0dh
buf 2 db ? ? ?,0ah,0dh
data ends
code segment
assume cs:code,ds:data
start:mov ax,data
mov ds,ax
mov cx,8
mov bl,00h

mov ah,01h
int 21h
and al,1
jnz skip
dc
rcl bl,1
jmp lop
skip:stc
rcl bl,1
lop:loop start
按无符号数处理:
mov al,bl
lea si,buf1
add si,2
mov cx,3
lop2:mov sh,0
mov al,10
div dl
or sh,30h
mov [si],ah
dec si
loop lop2
mov ah,2
int 21h
按有符号数处理:
mov al,bl
test al,80h
jz eeven
neg al
lea si,buf2
mov dl,'_'
jmp
eeven:mov dl,'+'
mov [si],dl
add si,3
mov cx,3
lop1:cbw
mov ah,0
mov dl,10
idiv dl
or ah,30h
mov [si],ah
dec si
loop lop1
done:
mov ah,4ch
int 21h
cseg ends
end start