设为首页 加入收藏

TOP

1.3.4 寄存器
2013-10-07 12:57:25 来源: 作者: 【 】 浏览:72
Tags:1.3.4 寄存器

1.3.4  寄存器

寄存器是用于特殊目的的、规模小但速度快的存储器,可以被内核直接存取。寄存器是易失的(volatile)。当程序退出时,程序在寄存器中用于任何意图和目的的任何数据或指令都会消失。与交换内存、虚拟内存不同,这些内存是持久的,因为保存在某种二级存储器中,而寄存器是暂时的。寄存器中的数据只在系统加电或程序运行期间保持。在通用计算机中,寄存器位于处理器内部,因为几乎为零延迟。表1-2包含了多数通用处理器中的寄存器的常见类型。

表1-2

    < xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

   

Index

在通用计算中以及处理地址的特殊用法中使用

Segment

用于保存地址的段部分

IP

用于保存下一条要执行的指令的地址偏移部分

Counter

用于循环结构,但也可用于通用计算用途

Base

用于地址的计算和存放

Data

用作通用寄存器,而且可用于临时存储和计算

Flag

显示计算机状态或处理器状态

Floating point

用于计算和移动浮点数


器选项外,C++(www.cppentry.com)还有asm{ }指示符,它允许在C++(www.cppentry.com)的过程或函数中写入汇编语言,例如:

  1. void my_fast_calculation(void)  
  2. {  
  3. ...  
  4. asm{  
  5. ...  
  6. mov 2 , %r3  
  7. inc(%r3)  
  8. ...  
  9. }  
  10. ...  

my_fast_calculation( )将2加载到UltraSparc处理器的%r3通用寄存器中。尽管对于C++(www.cppentry.com),cache不是轻易可见的,但是寄存器和RAM是可见的。根据开发的多处理器软件的类型,无论是通过编译器还是通过C++(www.cppentry.com) asm{ }指示符,对寄存器的操纵是必要的。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.2 多核体系结构 下一篇1.3.3 内存是关键

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: