这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » EasyARM2200启动代码的疑问

共2条 1/1 1 跳转至

EasyARM2200启动代码的疑问

菜鸟
2006-11-22 00:50:44     打赏

刚开始学ARM,用的周公EaayARM2200的板子,这几天在研究启动代码,有很多问题不能理解,到版上问问前辈。

问题1:地址0X0-0x1c处放置向量表,但Flash中的程序代码部分是从0x40处开始映射的,也就是说一开始的64个字节中前32个用作存放向量表,那么后32个放置的是什么内容,因为调试的时候发现里面确实有内容,但无法解释是什么东东?

问题2:一开始的向量表中放置了7LDR指令和一条DCD指令,如下:

LDR PC, ResetAddr

LDR PC, UndefinedAddr

LDR PC, SWI_Addr

LDR PC, PrefetchAddr

LDR PC, DataAbortAddr

DCD 0xb9205f80

LDR PC, [PC, #-0xff0]

LDR PC, FIQ_Addr

问题是:其他LDR指令的机器码都是[0xE59FF018],指令各不相同,为什么却有相同的机器码,而倒数第二跳指令的机器码却是[0XE51FFFF0],又当如何解释。我看过了ARM的手册,上面讲LDR指令机器吗的最后12位是 addressing_mode_specfic,但是我没找到关于addressing_mode的更详细的资料,谁能告诉我有哪些addressing_mode,上面的机器码又如何去解释?

菜鸟一个,请高手指教!




关键词: EasyARM2200     启动     代码     疑问    

菜鸟
2006-11-22 17:56:00     打赏
2楼

谢谢楼上各位,帖子贴出后我就搞懂了,感谢VCVV


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]