自定义一个数,赋值给AX,编写程序,将AX中的数以无符号十进制形式输出显示。
让AX除以10得到的余数压栈,商赋值给AX,循环到商为0停止,然后出栈
DATAS SEGMENT
;此处输入数据段代码
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV AX,1526
MOV BL,0;记录压栈次数
MOV CL,10;除数
L1:
ADD BL,1 ;栈内数字+1
DIV CL ;AX/CL,商AL,余数AH
;将余数AH压栈,因为最低压16位,这里就压了AX,
PUSH AX
;令AX = AL
MOV AH,0
;比较
CMP AL,0
JA L1
;全部压栈,开始输出
L2:
SUB BL,1 ;栈内数字-1
POP DX
MOV DL,DH
ADD DL,48
MOV AH,2
INT 21H
CMP BL,0
JA L2
JMP L0
L0:
MOV AH,4CH
INT 21H
CODES ENDS
END START