汇编王爽老师第三版,实验13(3)

本文介绍两个汇编语言程序实例:一是清空屏幕显示,二是按指定位置输出多行文字。通过直接操作视频内存地址实现屏幕清空,并使用BIOS中断调用在特定行显示字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  第一个程序用来清出来一片干净的屏幕,全部输出空格.

assume cs:code
code segment
main:
	mov ax,0b800h
	mov es,ax
	mov di,0
	
	mov cx,1600
	lp:
		mov byte ptr es:[di],' '
		add di,2
	loop lp
	
	mov ax,4c00h
	int 21h
code ends
end main 

  下面的代码完成实验3

assume cs:code
code segment
	s1: db 'Good,better,best,','$'
	s2: db 'Never let it rest,','$'
	s3: db 'Till good is better,','$'
	s4: db 'And better is best.','$'
	s:  dw offset s1,offset s2,offset s3,offset s4
	row: db 2,4,6,8


main:
	mov ax,cs
	mov ds,ax
	mov si,offset row;设置行
	mov bx,offset s;显示字符串
	mov cx,4
	
	lp:	
		push bx
		
		mov bh,0
		mov dh,ds:[si]
		mov dl,0
		mov ah,2
		int 10h
		
		pop bx
		
		mov dx,ds:[bx]
		mov ah,9
		int 21h
		
		inc si
		add bx,2
	loop lp
	
	mov ax,4c00h
	int 21h
code ends
end main 

  并没有简单的照抄课本。bx表示偏移量,bh也表示页码,所以使用bh之前,先入栈bx这个偏移量。
  效果如下:
在这里插入图片描述
谢谢阅读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值