论坛风格切换切换到宽版
  • 555阅读
  • 0回复

[问题求助]ARM基础入门一 [复制链接]

上一主题 下一主题
离线hackerstudy.
 
发帖
2066
C币
-193385
威望
377
贡献值
1
银元
-2
铜钱
4603
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01

                .   ARM系列处理器共有.37个寄存器。其中包括: 31个通用寄存器,包括程序计数器(PC)在内。这些寄存器都是32位寄存器。6个状态寄存器。这些寄存器.都是32位寄存器。电影
   ARM处理器共有7种不同..的处理器模式,每一种模式中都有一组相应的寄存器组。在任何时刻,可见的寄存器包括15个通用寄存器(R0-R14),一           鲜花
个或两个状.态寄存器及程序计数器(PC)。在所有的寄存器中,有些是各模式公用一个物理寄存器,有一.些寄存器各模式拥有自己独立的物理寄存器。              乙肝
   ARM通用寄存器[color="#ffffff"]ttp:.//.www.armforum.cn    美容

  . 通用寄存.器分为以下三类:备份寄存器、未备份寄存器、程序计数器PC             汽车
   未备份寄存.器    未备份寄存器包括R0-R7。对于每一个未备份寄存器来说,所有处理器模式.下都是使用同一个物理寄存器。未备份寄存器没有被系统用于非凡的用途,任何可采用通用寄存器的场合都.可以使用未备份寄存器。     健康
   备份寄存器
   对于R8-R12备份寄存器来说,每个寄存器对应两个不同的物理.寄存器。系.统为将备份寄存器用于任何的非凡用途,但是当中断处理非常简单,仅仅使用R8-R14寄.存器时,.FIQ处理程序可以不必执行保存和恢复中断现场的指令,从而可以使中断处理非常迅速。 [color="#ffffff"]M开发论坛     美容

   对于R.13,R1..4备份寄存器来说,每个寄存器对应六个不同的物理寄存器,其中的一个是系统模式和用户模式共用的;另外的五个对应于其他的五种处理器模式。采用下面的记号来区分各个物理寄存器:R13_其中MODE可以是下面几种模式之一:usr,svc,.abt,und,irq,fiq .

程序计数器P.C [color="#.ffffff"]字串5(广告)

   可以作为一般的通用寄存器使用,但有一些指令在使用R.15.时有一些限制。由于ARM采用了流水线处理器机制,当正确读取了PC的值时,该值为当前指(广告)
令地址值加上8个字节。也就是说,对于ARM指令集来说,PC指向.当前指令的下两.条指令的地址。由于ARM指令是字对齐的,PC值的第0位和第一位总为<性病>
0。
   需要注重的是,.当使用str/stm保存R15时,保存的可能是当前指令地.址值加8个字节,也可能.保存的是当前指令地址值加12个字节。到底哪种方式取决于芯片的具体设计。对于用户来说,尽量避免使用STR/STM指令来保存R15的值。学习
   当
成功的向R15写入一个数值时,.程序将跳转到该.地址执行。由于ARM指令是字对齐的,写入R15的值应满足bits[1:0]为0b00,具体要求arm              乙肝
个版本有所不同:**对.于arm3以及更低的版本,.写入R15的地址值bits[1:0]被忽略,即写入r15的地址值将与0xFFFF.
FFFC做与操作。**对于ARM4以及更高的版本.,程序必须保证写入R15.的地址值bits[1:0]为0b00,否则将产生不可预知的后果。对于            杀毒
Thumb指令集来说,指令是.班子对齐的,处理器将忽略bit[0]。 [color="#.ffffff"]字串8             电子

           .                女人
         .                 婚庆
               . 投资
.                           杀毒
.               健康

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70832/showart_1012164.html--------------彩票
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个