汇编——print一个十进制数

博客目录

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

功能及参数表见代码注释

	mov ax,156
	call showa
	ret
showa:	;显示一个十进制数-------------------------------------proc of show_one	数在ax中16位
	 		;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
	;-------------------------------------------------------------------------------

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值