SJMP 到底如何转移?

SJMP 到底如何转移?,第1张

rel,是8位的补码。

它是目标地址,减去源地址,得到的差。

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执行


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5796360.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-01-31
下一篇 2023-01-31

发表评论

登录后才能评论

评论列表(0条)

保存