3-1-指令系统-cpu寄存器解析.pptVIP

  • 10
  • 0
  • 约1.12万字
  • 约 52页
  • 2019-07-13 发布于江苏
  • 举报
累加器 (A) 累加器A是一个通用8位寄存器。经常用于暂存一个输入到算术逻辑单元(ALU)的操作数,并且用于存放(ALU)的计算结果。 复位对累加器A的内容没有影响。 索引寄存器(H:X) 这个16位寄存器实际上分为两个8位寄存器(H和X),它们作为一个16位的地址指针一起工作,H存放一个地址的高位字节和X存放地址的低位字节。所有索引寻址模式指令利用H:X中全部16位值作为一个索引参考指针;然后,为了与早先 M68HC05家族兼容,一些指令只在低8位(X)中运行,并且H在复位过程中强制为0x00。复位对X的内容没有影响。 堆栈指针(SP) 16位地址指针寄存器指向下一个有效的堆栈位置。堆栈可以放置在包含RAM的 64 Kbyte地址空间的任意位置,其大小可以为任何RAM中的有效值。堆栈用来自动保存子程序调用的返回地址、中断中CPU寄存器和局部变量的返回地址。AIS(立即加堆栈指针,堆栈处理指令)指令对SP加上一个8位有符号立即数。这经常用于对堆栈中的局部变量分配和取消分配空间。 向上生长型(如51单片机) 特性:先加后压,先弹后减 向下生长型(飞思卡尔单片机) 特性:先压后减,先加后弹 程序计数器(PC) 程序计数器是个16位的寄存器,存放取出的下一个指令或操作数的地址。 正常的程序执行期间,每一次取出指令或者操作数时,程序计数器自动加一指向后续的存储器位置。跳转、分支、中断和返回操作程序计数器加载地址不是下一个后续位置。 复位期间,程序计数器加载位于$FFFE和$FFFF的复位矢量(这点与51的差别很大,PC不是装载$FFFE,而是装载$FFFE和$FFFF 中存放的内容)。该处的矢量地址是退出复位状态后被执行的第一条指令的地址。 条件代码寄存器(CCR) 8位条件代码寄存器存放中断屏蔽位(I)和5个指出刚执行指令结果的标志。第5和第6位永远设置为1。如图: I 位是中断屏蔽控制位,与其他位不同的是它在CCR 中不是处理器状况位。在CCR的六个可执行位中,I 位也是复位后唯一可被初始化的位。I 位复位后置为1,这使得中断被屏蔽直到堆栈指针被初始化。其他五个状态位(V、H、N、Z 和C)在复位后是未知的,只有在执行一个指令后才能知道。复位后无须强制这些位为特定的值,因为直到执行了一个影响它们的指令后,与这些位相关的条件转移才有意义。 这五个状态位标志了运算和其他指令的结果。条件转移指令根据CCR 内状态位的值来决定是直接转移到一个新的程序地址,还是继续执行下一个指令。简单的条件转移指令(BCC、BCS、BNE、BEQ、BHCC、BHCS、BMC、BMS、BPL 和BMI)所导致的转移取决于单一的CCR 位状态,而其他转移指令则被两三个更复杂的CCR 位控制。例如,若布尔表达式[(Z) | (N⊕V)]真,则将产生小于等于转移(BLE). 0 C 进/借标志—当一个另外操作产生一个对第7位累加需要进位或者一个减法操作要求一个借位,则置本位为1。一些指令,如位测试和分支,移位和旋转也会影响进/借标志。 0 第7位没有产生进/位 1 第7位产生进/位 1 Z 置零标志—当一个算术操作,逻辑操作或数据处理产生一个0x00或0x0000的结果,则将该位置1。如果加载或存储的值为0,简单的加载或存储一个引起Z置1。 0 NUMn-zero result 1 Zero result 2 N 负数标志—当一个算术操作,逻辑操作或者数据处理产生一个负数结果,则会设置结果的第7位,并且CPU将负数标志位置1。如果加载或存储的最高位为1,同样会将N置1。 0 非负数结果 1 负数结果 3 I 中断屏蔽位—当设置中断屏蔽,所有可屏蔽的 CPU中断将被屏蔽.当中断屏蔽被清除时使能。当产生一个CPU中断,中断屏蔽被保存到堆栈,但是在中断服务子程序第一条指令执行前自动置1。 WAIT 和STOP 指令会自动对I 位清零 0 中断使能 1 中断屏蔽 4 H 半进位标志—当在累加器第3位和第4位之间在不带进位加法(ADD)或者带进位加(ADC)操作时发生半进位,则CPU置该标志为1。二进制编码的十进制(BCD)运算将用到半进位标志。另外DAA指令也会根据条件代码位H和C的状态,自动加一个修正值到先前的ADD或ADC的BCD运算,以修正结果为一个正确的BCD值。 0 第3位和第4位之间没有进位 1 第3位和第4位之间有进位 7 V 二进制补码溢出标志—当发生一个二进制补码溢出,CPU置这位为1。符号分支指令BGT,BGE, BLE和BLT将会用到溢出标志位。 0 没有溢出 1 有溢出 指令系统 指令系统 指令统计 1、数据传送类指令 49 2、算术运算类指令 91 3、逻辑运算类指令 24 4、位操作类指令

文档评论(0)

1亿VIP精品文档

相关文档