汇编源码学习14-子函数模块-输出双字节整数

;子函数:输出双字节整数
;入口参数:AX传递要输出的双字节整数
;用到的寄存器:AX,DS,BX,DX,DI,SI
data3	SEGMENT
		str		DB	32 DUP('$(编译时去除此处括号)')
data3	ENDS
code3	SEGMENT
OutINT	PROC	FAR
		ASSUME	CS:code3,DS:data3
		PUSH	AX
		PUSH	BX
		PUSH	DX
		PUSH	DI
		PUSH	SI
		PUSH	DS
		MOV		BX,data3
		MOV		DS,BX
		;双字节整数转为字符串
		LEA		DI,str
		MOV		BX,10
again3_1:
		MOV		DX,0
		DIV		BX
		ADD		DL,30H
		MOV		[DI],DL
		INC		DI
		CMP		AX,0
		JNE		again3_1
		MOV		[DI],'$(编译时去除此处括号)'
		;反序
		DEC		DI
		LEA		SI,str
again3_2:
		CMP		DI,SI
		JNA		over3_1
		MOV		AH,[DI]
		MOV		AL,[SI]
		MOV		[SI],AH
		MOV		[DI],AL
		INC		SI
		DEC 	DI
		JMP		again3_2
over3_1:
		LEA		DI,str
		MOV		DX,DI
		MOV		AH,09H
		INT		21H
		POP		DS
		POP		SI
		POP		DI
		POP		DX
		POP		BX
		POP		AX
		RET
OutINT	ENDP
code3	ENDS


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值