BINIDEC PROC NEAR
MOV CX,100D
CALL DEC_DIV
MOV CX,10D
CALL DEC_DIV
MOV CX,1D
CALL DEC_DIV
RET
DEC_DIV PROC NEAR
MOV AX,SI
MOV DX,0
DIV CX
MOV SI,DX
MOV DL,AL
ADD DL,30H
MOV AH,2H
INT 21H
RET
DEC_DIV ENDP
BINIDEC ENDP
我想请教一下这两个子程序的功能是什么吗。。每一条指令的含义是什么,最好可以每条指令给出注释,我有点模糊
------解决方案--------------------------------------------------------
BINIDEC PROC NEAR
MOV CX,100D
CALL DEC_DIV
MOV CX,10D
CALL DEC_DIV
MOV CX,1D
CALL DEC_DIV
RET
DEC_DIV PROC NEAR
MOV AX,SI
MOV DX,0
DIV CX ;SI除于100
MOV SI,DX ;余数赋值给SI
MOV DL,AL ;将商给DL(除数16位这里的商应该是AX)
ADD DL,30H;将商转为字符数,(比如商是1,加上30H,就变为ASCII上的'1'字符)
MOV AH,2H ;准备调用21H中断的2号功能,将DL字符输出
INT 21H
RET
DEC_DIV ENDP
BINIDEC ENDP