PersonalCorpus 版 (精华区)


 ·LJMP addr16  (长转移指令)

    第一条指令称为长转移指令,指令提供16位目标地址,将指令
中第二字节和第三字节地址码分别装入PC的高8位中,所以无条件转
移的目标地址范围是64K字节空间。

 ·AJMP addr11  (绝对转移)

    第二条指令称为绝对转移指令,指令提供11位目标地址,所以
,无条件转移的目标地址范围是从下条指令开始的2K字节空间。

    
 ·SJMP rel  (短转移,相对转移)

第三条指令称为相对短转移指令,指令控制程序无条件的转向指定
地址。该指令的rel是一个带符号的相对偏移量,范围为-128~+12
7。负数表示向后转移,正数表示向前转移。这条指令的优点是指令
给出的是相对转移地址,不具体指出地址值,这样当程序地址发生
变化时,只要相对地址不发生变化,该指令就不需作任何改动。在
用汇编语言写程序时,rel是一个标号,由汇编程序在汇编过程中自
动计算偏移地址。在手工汇编时,可用下式计算偏移地址:

    向后转移时:rel=FEH-(源、目的地址的绝对值)

    向前转移时:rel=(源、目的地址差的绝对值)-2

 ·JMP  @(A)+DPTR     

第四条指令称为散转指令(又称为间接转移指令),该指令把累加
器A中的8位无符号数与作为基址寄存器DPTR中的16位数据相加,所
得的值送入PC作为转移的目的地址。该指令执行后不影响累加器A和
数据指针DPTR中的原内容,也不影响任何标志位。这条指令的特点
是其转移地址不是编程时确定的,而是在程序运行时动态决定的。
因此,可以在DPTR中装入多条转移程序的首地址,而由累加器A中的
内容来动态选择该时刻应转向那一条分支程序。






;
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.346毫秒