它是目标地址,减去源地址,得到的差。
HERE: SJMP HERE
rel = HERE - (HERE + 2) = -2 = FEH。
指令存放在2个单元里,那是因为这个指令占2个字节,一个指令字节,一个跳转偏移。它告诉你这个指令存在什么地方,是因为SJMP的执行的是相对跳转,也就是从这个当前地址向前后向后跳多少个字节。
SJMP rel8 执行的 *** 作如下:
PC = PC + 2 这是SJMP这条指令所占用的空间
PC += rel8
所以当执行到SJMP 7eh的时候,PC=20A0H
根据这个公式:PC = 20A0H + 2 + 7eH = 2120H,所以最后程序跳转到2120H执行
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)