打印
[AVR单片机]

高手进-RJMP指令--尤其是反汇编高手

[复制链接]
3659|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ghostzjl|  楼主 | 2007-4-4 21:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  我在bin文件中发现了两个地方非常值得注意,特别是反汇编的同志们!
我将一个bin文件反汇编为asm,然后又用这个asm重新生成hex,再生成bin,两个文件对比发现两个地方不同:
源文件      汇编得到的文件
CAC6    ->     C2C6     也就是    rjmp 0xac7 -> rjmp 0x2c7
C800    ->     C000     也就是    rjmp 0x801 -> rjmp 0x001


大家看看这两个地方会不会有问题?问题是怎么产生的?
芯片用的是ATMega48,编译环境用的AVR Studio4.12
按照avr的指令集,rjmp跳转的范围为2k-1~2k,对于源文件中超出2k的地址0xac6和0x800,cpu会怎样处理呢?



相关帖子

沙发
john_lee| | 2007-4-5 09:28 | 只看该作者

roll back

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

79

帖子

0

粉丝