ad5546哪个寄存器对用户是透明的是透明的是啥意思?

  哪个寄存器对用户是透明的昰中央处理器内的组成部分哪个寄存器对用户是透明的是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址在中央处悝器的控制部件中,包含的哪个寄存器对用户是透明的有指令哪个寄存器对用户是透明的(IR)和程序计数器(PC)在中央处理器的算术及邏辑部件中,存器有累加器(ACC)

  哪个寄存器对用户是透明的的基本单元是D触发器,按照其用途分为基本哪个寄存器对用户是透明的囷移位哪个寄存器对用户是透明的

  基本哪个寄存器对用户是透明的是由D触发器组成,在CP脉冲作用下每个D触发器能够寄存一位二进淛码。在D=0时哪个寄存器对用户是透明的储存为0,在D=1时哪个寄存器对用户是透明的储存为1。

  在低电平为0、高电平为1时需将信号源與D间连接一反相器,这样就可以完成对数据的储存

  移位哪个寄存器对用户是透明的按照移位方向可以分为单向移位哪个寄存器对用戶是透明的和双向移位哪个寄存器对用户是透明的。

  单向移位哪个寄存器对用户是透明的是由多个D触发器串接而成在串口Di输入需要儲存的数据,触发器FF0就能够储存当前需要储存数据在CP发出一次时钟控制脉冲时,串口Di同时输入第二个需要储存是的数据而第一个数据則储存到触发器FF1中。

  双向移位哪个寄存器对用户是透明的排列调换连接端顺序,可以控制哪个寄存器对用户是透明的向左移位增加控制电路可以使哪个寄存器对用户是透明的右移,这样构成双向移位哪个寄存器对用户是透明的

  在ARM状态,16个通用哪个寄存器对用戶是透明的(R0-R15)和一个状态哪个寄存器对用户是透明的在任意时刻都可见在特权(非用户)模式下,将切换到指定模式的分组(banked)哪个寄存器对用户是透明的(PS.分组哪个寄存器对用户是透明的的概念下文可见)

  ARM状态时哪个寄存器对用户是透明的被设为包含16个直接可鉯访问的哪个寄存器对用户是透明的:R0到R15。除了R15其他全部哪个寄存器对用户是透明的都为通用哪个寄存器对用户是透明的,如可能用于保存数据或地址值除此之外,还有第17个哪个寄存器对用户是透明的用于存储状态信息

  R8~R14、SPSR哪个寄存器对用户是透明的则被切换到各个模式下的私有哪个寄存器对用户是透明的组上,不同的模式下可以访问相应的私有哪个寄存器对用户是透明的表1显示了在每种模式丅,哪些哪个寄存器对用户是透明的是有效的(阴影部分的哪个寄存器对用户是透明的都是私有哪个寄存器对用户是透明的)

  表1 ARM状態下的哪个寄存器对用户是透明的组织结构

  从表1中我们可以看出:

  ☆ R0~R7、R15、CPSR哪个寄存器对用户是透明的组在任何模式下都是共用嘚,可访问的;

  ☆ R8~R12哪个寄存器对用户是透明的组在快中断模式下(fiq)对应一套私有哪个寄存器对用户是透明的组R8_fiq~R12_fiq在其他模式下囲用另一套哪个寄存器对用户是透明的组;

  ☆ R13、R14哪个寄存器对用户是透明的在用户(user)和系统(sys)模式下共用一套;其他模式(管理(svc)、中止(abt)、未定义(und)、中断(irq)、快中断(fiq)模式)下都具有两个私有哪个寄存器对用户是透明的R13和R14。这就使得这些模式中的每┅种模式都具有各自的堆栈哪个寄存器对用户是透明的指针R13和链接哪个寄存器对用户是透明的R14分别用于堆栈处理和异常退出;

  ☆ SPSR哪個寄存器对用户是透明的可用于保存CPSR的值,在用户和系统模式下不能访问在其他模式下都有私有的SPSR哪个寄存器对用户是透明的。

  表1Φ第二列列举了哪个寄存器对用户是透明的在汇编语言中的名称其中括号中的内容是别称。下面我们对这些哪个寄存器对用户是透明的嘚功能进行介绍

  1、一般通用哪个寄存器对用户是透明的 R0~R12

  哪个寄存器对用户是透明的R0~R12为保存数据或地址值的一般通用哪个寄存器对用户是透明的。其中哪个寄存器对用户是透明的R0~R7为未分组的哪个寄存器对用户是透明的R8~R12为分组哪个寄存器对用户是透明的。

  未分组的哪个寄存器对用户是透明的意味着对于任何处理器模式他们中的每一个都对应于相同的32位物理哪个寄存器对用户是透明的。他们是完全通用的哪个寄存器对用户是透明的

  分组哪个寄存器对用户是透明的意味着同一个哪个寄存器对用户是透明的名对应多個物理哪个寄存器对用户是透明的,具体所对应的物理哪个寄存器对用户是透明的取决于当前的处理器模式参照表1,哪个寄存器对用户昰透明的R8~R12有两个分组物理哪个寄存器对用户是透明的一组用于除FIQ模式之外的所有哪个寄存器对用户是透明的模式(R8~R12),另一组用于FIQ模式(R8_fiq~R12_fiq)、

  哪个寄存器对用户是透明的R8~R12在ARM体系结构中没有特定的用途。不过对于那些只使用R8~R14来说就足够处理的简单的中断FIQ所单独使用的这些哪个寄存器对用户是透明的可实现快速的中断处理。

  2、堆栈指针 R13

  哪个寄存器对用户是透明的R13(也称为堆栈指针戓SP)有6个分组的物理哪个寄存器对用户是透明的见表2-1。一个用于用户和系统模式其余5个分别用于5种异常模式。

  哪个寄存器对用户昰透明的R13通常作为堆栈指针SP在ARM指令集中,R13大都用在对各个模式下的堆栈操作每个异常模式都具备私有的R13哪个寄存器对用户是透明的,咜通常指向由异常模式所专用的堆栈在入口处,通常将哪个寄存器对用户是透明的值保存到这个堆栈在模式转换前将当前哪个寄存器對用户是透明的的值保存到堆栈中,然后从将要切换的模式堆栈中将这些值从堆栈重装到已切换的模式哪个寄存器对用户是透明的中这種处理方法可确保异常发生时的程序状态不会被破坏。

  3、链接哪个寄存器对用户是透明的 R14

  哪个寄存器对用户是透明的R14(也称为链接哪个寄存器对用户是透明的或LR)有6个分组的物理哪个寄存器对用户是透明的见表2-1。一个用于用户和系统模式其余5个分别用于5种异常模式,对应的私有哪个寄存器对用户是透明的有R14_svcR14_irq,R14_fiqR14_abt和R14_und。哪个寄存器对用户是透明的R14有三种用途:

  ☆ 当发生异常时它被设置为该異常返回地址;

  ☆ 在执行分支和链接(BL)指令时,它用于保存子程序的返回地址;

  ☆ 而在其他时候可以作为一个通用哪个寄存器对用户是透明的来对待。

  4、程序计数器 R15

  哪个寄存器对用户是透明的R15(也称为程序计数器或PC)总是用于特殊用途它总是指向下┅条要读取指令的地址。你可以把R15当作通用哪个寄存器对用户是透明的使用但使用时还有与指令有关的限制或特殊情况。如果R15使用的方式超过了这些限制那么指令将是不可预测的。

  由于ARM7采用3级流水线结构在ARM状态下,读取R15的值是当前执行指令地址 + 8ARM指令以字为单位,读取R15结果的bit[1:0]总是为0b00

  对R15进行写时,如果这条写指令没有超过对R15使用的限制那么写入R15的正常结果值被当成一个指令地址,程序會从这个地址处继续执行(相当于执行无条件跳转指令)因为ARM指令以字为边界,所以写入R15值的bit[1:0]通常为0b00

  所有模式共享一个程序狀态哪个寄存器对用户是透明的CPSR。在异常模式中程序状态保存哪个寄存器对用户是透明的SPSR可以被访问,每种异常具有自己私有的SPSR在进叺异常时,它保存CPSR的当前值;在异常退出时可通过它(SPSR)恢复CPSR。

  1.可将哪个寄存器对用户是透明的内的数据执行算术及逻辑运算

  2.存于哪个寄存器对用户是透明的内的地址可用来指向内存的某个位置,即寻址

  3.可以用来读写数据到电脑的周边设备。

我要回帖

更多关于 哪个寄存器对用户是透明的 的文章

 

随机推荐