[求助]8位二进制数转换成ASCII码的方法
要求:设(30H)=4BH,将高4位的ASCII码放在31H单元,低4位的ASCII码放在32H单元,程序具有通用性,向入口参数30H存入任何数,都能将其变成相应的ISCII码.方法:如:用CJNE A,#0AH,NEQ,分别加30H或37H的方法.
哪位高手帮帮忙,先谢谢了
data segment org 30h db ? db ? db ? data ends code segment main proc far assume cs:code,ds:data push ds sub ax,ax push ax mov ax,data mov ds,ax mov si,30h mov byte ptr [si],4bh call convert mov cx,2 mov si,30h loop1: inc si mov dl,[si] mov ah,2 int 21h loop loop1 mov ax,4c00h int 21h main endp convert proc near mov si,30h mov al,[si] mov ch,2 rotate: inc si mov cl,4 rol al,cl mov bl,al and bl,0fh add bl,30h cmp bl,3ah jl store add bl,7h store: mov [si],bl dec ch jnz rotate ret convert endp code ends end main