《汇编语言》第9章转移指令的原理.ppt

9.7 jcxz指令 我们从 jcxz的功能中可以看出,指令“jcxz 标号”的功能相当于: if((cx)==0)jmp short 标号; (这种用C语言和汇编语言进行的综合描述,或许能使你对有条件指令理解得更加清楚。) 特别提示 检测点9.2(p171) 没有完成此检测点,请不要向下进行。 9.8 loop指令 loop指令为循环指令,所有的循环指令都是短转移,在对应的机器码中包含转移的位移,而不是目的地址。对IP的修改范围都为-128~127。 指令格式:loop 标号 ((cx))=(cx)-1,如果(cx)≠0,转移到标号处执行。 操作 9.8 loop指令 loop 标号 指令操作: (1)(cx)=(cx)-1; (2)如果(cx)≠0,(IP)=(IP)+8位位移。 8位位移=“标号”处的地址-loop指令后的第一个字节的地址; 8位位移的范围为-128~127,用补码表示; 8位位移由编译程序在编译时算出。 当(cx)=0,什么也不做(程序向下执行)。 9.8 loop指令 我们从loop的功能中可以看出,指令“loop 标号”的功能相当于: (cx)--; if((cx)≠0)jmpshort 标号 特别提示 检测点9.3(p172) 没有完成此检测点,请不要向下进行。 9.9 根据位移进行转移的意义 前面我们讲到:

文档评论(0)

1亿VIP精品文档

相关文档