做网站能赚钱吗表情包,什么是软件的开发平台,怎么做微信公众号文章,北京建设工程公司补全编程#xff0c;利用loop指令#xff0c;实现在内存2000H段中查找第一个值为0的字节#xff0c;找到后#xff0c;将它的偏移地址存储在DX中 assume cs:code code segment start:mov ax,2000h mov ds,ax mov bx,0 s: mov cl,[bx] mov ch,0 inc cx ;此处为要…补全编程利用loop指令实现在内存2000H段中查找第一个值为0的字节找到后将它的偏移地址存储在DX中 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 ;dec指令的功能和inc相反dec bx进行的操作为:(bx)(bx)-1 mov dx,bx mov ax,4c00h int 21h code ends end start 还有一个实验记录如下 assume cs:codesg codesg segment mov ax,4c00h int 21h start: mov ax,0 s: nop nop mov di,offset s mov si,offset s2 mov ax,cs:[si] mov cs:[di],ax s0:jmp short s s1:mov ax,0 int 21h mov ax,0 s2:jmp short s1 nop codesg ends end start 单步调试结果如下 对应的机器码如下 上面是两张图中间有重 程序在跳到S处时执行完指令后就跳到第一条指令去了。原因是jmp short s1对应的机器码中给出的位移值而不是目的地址从图中可以看出是F6等于-10即当前指令执行完成后IP2然后-10回到S1标号处当把这条指令放到start的下一条语句时它对应的机器指令指明IP也应该-10上移10个位置所以就到了第一条指令mov ax 4c00h而不是跳到s1处转载于:https://www.cnblogs.com/919czzl/p/4155267.html