删除:
2、进制转换 (1)、流程图
开始 输入16进制数 将ASCII码转换为数字 将数字依次乘以16并求和 将该数字除10取余,直到商为零,并保存余数 将得到的数转换为ASCII码 输出得到的数 结束
(2)、源代码如下:
datas segment num2 db 0,0,0,0 num22 dw 0 tempio db 0 temp dw 0
tab db '0123456789abcdef'
string db 'Input error,please try again:$' datas ends
codes segment
assume ds:datas,cs:codes start: mov ax,datas mov ds,ax again: mov ax,0 lea si,num2 call input mov al,tempio
cmp al,46h ja error sub al,'0' mov ds:[si],al inc si call input mov al,tempio cmp al,46h ja error sub al,'0' mov ds:[si],al inc si call input mov al,tempio cmp al,46h ja error sub al,'0' mov ds:[si],al inc si call input mov al,tempio cmp al,46h
ja error sub al,'0' mov ds:[si],al call newline lea si,num2 mov cx,4 mov dx,0ah l2:
cmp ds:[si],dl jb l21 mov al,ds:[si] sub al,7 mov ds:[si],al l21: inc si loop l2 lea si,num2 mov ah,ds:[si] mov cx,4 shl ah,cl inc si mov bl,ds:[si]