汇编内存单元里存放着若干ASCLL码十进制数的整数串,串间用逗号分隔,最后以回车符结束,编制程序将其转换为补码二进制存入BIN开始的单元

   日期:2020-05-10     浏览:95    评论:0    
核心提示:ASCTOBIN PROCPUSH BXXOR CX,CXGETA:MOV AL,[SI];判断是不是数字ASCLL码CMP AL,0JB RETURN;CMP AL,9JA RETURNSUB AL,0XOR AH,AH;把CX乘10,为了做到10*n+dMOV BX,CX;SHL CX,1SHL CX,1ADD CX,BXSHL CX,1;把乘10的CX+AX,SI指针后移ADD CX,AXINC SIJMP GETA;RETURN:POP BX
ASCTOBIN PROC
PUSH BX
XOR CX,CX
GETA:
MOV AL,[SI]
;判断是不是数字ASCLL码
CMP AL,'0'
JB RETURN;
CMP AL,'9'
JA RETURN
SUB AL,'0'
XOR AH,AH
;把CX乘10,为了做到10*n+d
MOV BX,CX;
SHL CX,1
SHL CX,1
ADD CX,BX
SHL CX,1
;把乘10的CX+AX,SI指针后移
ADD CX,AX
INC SI
JMP GETA;
RETURN:
POP BX
RET
ASCTOBIN ENDP;

主程序中调用

AGAIN: CALL ASCTOBIN
MOV [DI],CX
INC SI
ADD DI,2
CMP AL,ODH;判断取到的是不是回车
JNZ AGAIN

ASCLL码首址在SI中

出口:CX为转换结果,AL为取出的非数字符号

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服