汇编――print一个十进制数

匿名 (未验证) 提交于 2019-12-03 00:22:01

开发环境:Emu8086 v3.05  小端模式

功能及参数表见代码注释

	mov ax,156 	call showa 	ret showa:	;显示一个十进制数-------------------------------------proc of show_one	数在ax16λ 	 		;div 除法: 被除数: 如果除数是8位则被除数为16λ, 默认放在AX中, 如果除数是16λ, 则被除数为32λ, 默认高位放在DX, 低位放在AX 	 		;	    结果: 如果除数是8λ, 那么执行div后, 余数存放在ah, 商存放在AL中; 如果除数是16λ, 那么AX保存商, DX保存余数  	pushf 	push bx 	push cx 	push dx 	;mov ax,ax 	mov bx,0 shoa_lp: 	mov cx,10 	div cl 	mov cl,ah 	mov ch,0 	push cx 	inc bx	;计数 	mov ah,0 	cmp ax,0 	ja shoa_lp 	 	mov ah,02h 	mov cx,bx shoa_lp1: 	pop bx 	mov dl,bl 	add dl,'0' 	int 21h 	loop shoa_lp1 	pop dx 	pop cx 	pop bx 	popf 	ret 	;-------------------------------------------------------------------------------

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!