《汇编语言》(第三版)王爽第十章实验10.3个人方法记录

本文记录了使用汇编语言完成王爽《汇编语言》第三版中第十章实验10.3的过程,通过一种相对繁琐但全面运用所学知识的方法实现题目要求。
摘要由CSDN通过智能技术生成

想了一种可能比较繁琐的方法吧目前学到的知识都用上了来实现当前题目

代码如下

assume cs:code
		data segment
			db 12,30,10101001b,10	;显示模式的行,列,字体和背景颜色,数据进制
			db 28 dup(0)			;转换后数据的缓存区域
			dw 123,12666,1,8,3,38,0	;待处理后显示的数据
		data ends
		
		stack segment
			db 32 dup(0)
		stack ends
		
		code segment
			start:
			mov ax,data
			mov ds,ax
			mov ax,stack			
			mov ss,ax				;初始化栈段和地址段
			mov sp,32
			mov di,ds:[3]			;转换为十进制
			mov si,4
			call dtoc
			
			mov si,4
			mov dh,ds:[0]    		;字符串输出行位置  
			mov dl,ds:[1]   		;字符串输出列位置  
			mov cl,ds:[2]    		;显示模式(8位)  
			call show_str			;调用子程序 show_str显示转换后的字符串
			
			mov ax,4c00h
			int 21h
			
			dtoc:					;子程序将内存单元中的数据转换为十进制
				mov bx,32
				dch:				;外层循环操作字型数据
					mov ax,[bx]
					mov cx,ax
					jcxz over		;判定是否循环到结尾终止符号设置为'0'
					dsn:			
						mov cx,ax	;判断数据是否转换完毕用求余方法,当求余结束时商为0
						jcxz after	;一个数据转换结束跳入后续处理
						div di
						add dx,30h	;添加30h符合ASCII码的十进制显示
				
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值