汇编语言王爽实验六

发现在执行完 mov ds,ax 后 ds的地址发生了变化  在此之前还要 用d ds:100来查看内容

而之后仅需 d ds:0来查看就好  

完整代码如下

assume cs:code,ss:stack,ds:data
;将每一行的前四个单词变为大写
data segment
	   ;0123456789abcdef
	db '1. display      '
	db '2. brows        '
	db '3. replace      '
	db '4. modify       '
data ends
stack segment
	dw 0,0,0,0
	dw 0,0,0,0
stack ends

code segment
	;循环四次
start:  mov ax,stack
	mov ss,ax
  	mov sp,16
	
	mov ax,data
	mov ds,ax
	mov bx,0    ;用于判断行

	mov cx,4    ;外循环四次
	    

s0: 	push cx
	mov cx,4    ;设置内循环次数
	mov si,3

s:	mov al,ds:[bx+si]   ;错误点!!!
	and al,11011111b
	mov ds:[bx+si],al
	inc si
	loop s

	add bx,16   ;换行
	pop cx      ;行循环次数减一
	loop s0


	mov ax,4c00h
	int 21h


code ends

end start

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值