王爽 汇编语言第三版 监测点9.2 监测点9.3 补全编程,利用jcxz指令,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,

补全编程,利用jcxz指令,实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储在dx中。

而且,截图中给出了是字节。是8位,占通用寄存器的一半空间!区分出CL,CH!
 

王爽 汇编语言第三版 监测点9.2 监测点9.3 补全编程,利用jcxz指令,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,_第1张图片

为了区分出是否成功写入。将dx提前赋值为9999!

代码:

assume cs:code
code segment

start : mov ax,2000h
		mov ds,ax
		mov bx,0
		s:
		mov cl,[bx]
		mov ch,0
		jcxz ok
		inc bx
		jmp short s
		ok:mov dx,bx
		mov ax,4c00h
		int 21h
code ends
end start

结果:

王爽 汇编语言第三版 监测点9.2 监测点9.3 补全编程,利用jcxz指令,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,_第2张图片

 

 

监测点9.3:

loop,执行之前。会先将cx进行减一操作!

王爽 汇编语言第三版 监测点9.2 监测点9.3 补全编程,利用jcxz指令,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,_第3张图片

代码:

assume cs:code
code segment

start : mov ax,2000h
		mov ds,ax
		mov bx,0
		s:
		mov cl,[bx]
		mov ch,0
		inc cx
		inc bx
		loop s
		ok:dec bx
		mov dx,bx
		mov ax,4c00h
		int 21h
code ends
end start

执行过程:

王爽 汇编语言第三版 监测点9.2 监测点9.3 补全编程,利用jcxz指令,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,_第4张图片

OK

 

你可能感兴趣的:(汇编语言)