汇编之寄存器

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wjc19911118/article/details/73201424

8086寄存器组

数据寄存器

这些寄存器可以字(16位)或字节(8位)单位形式访问
数据寄存器中每个寄存器又可以分为2个8位的寄存器。分别为AH、AL,BH、BL,CH、CL,DH、DL。H表示高字节(高8位)寄存器、L表示低字节(低8位)寄存器。例如 用AX寄存器存放一个字1234H,表示为(AX)=1234H,即高字节12放在AH,低字节34放在AL中
1. AX accumulator
2. BX base
3. CX count
4. DX data

段寄存器

  1. CS code segment
  2. DS data segment
  3. ES extra segment
  4. SS stack segment

地址寄存器

这些寄存器只能以字(16位)单位形式访问
地址寄存器包括指针和变址寄存器SP、BP、SI、DI四个16位寄存器。顾名思义,它们可用来存放存储器操作数的偏移地址。另外,它们也可以作为通用寄存器用
1. SI source index
2. DI destination index
3. SP stack pointer
4. BP base pointer

控制寄存器

  1. IP instruction pointer 指令指针

    IP 指令指针寄存器,用来存放代码段中的偏移地址,指出当前正在执行指令的下一条指令所在单元的偏移地址

  2. SP stack pointer 栈指针

  3. FLAGS (又称为PSW程序状态字) 标志位寄存器,两个16位寄存器。用于控制程序的执行

FLAGS 标志位寄存器单独介绍

FLAGS标志寄存器中的某位代表CPU的1个标志,表示出CPU的某种执行状态。最低位为D0,最高位为D15。8086CPU的标志寄存器共有9个标志,分别为6个条件码标志和3个控制标志。如图:

flags寄存器

条件码标志

  1. CF进位标志。当指令执行结果的最高位向前有进位时,CF=1,否则CF=0。
  2. SF符号标志。当指令执行结果的最高位(符号位)为负时,SF=1,否则SF=0。
  3. ZF零标志。当指令执行结果为0时,ZF=1,结果不为0时,ZF=0。
  4. OF溢出标志。当指令执行结果有溢出(超出了数的表示范围)时,OF=1,否则OF=0。
  5. AF辅助进位标志。当指令执行结果的第3位(半字节)向前有进位时,AF=1,否则AF=0。
  6. PF奇偶标志。当指令执行结果中1的个数为偶数个时,PF=1,否则PF=0。

控制标志

  1. DF方向标志。执行串处理指令时,若设置DF=0,存储单元的地址寄存器的值自动增加,若设置DF=1,存储单元的地址寄存器的值自动减小。
  2. IF中断标志。设置IF=1,允许CPU响应可屏蔽中断,IF=0则不响应。
  3. TF陷阱标志。在DEBUG调试时,TF=1,采用单步执行方式,即进入陷阱;TF=0,正常执行程序。

例: 两个二进制数相加运算,有关标志位自动发生变化。

二进制计算
根据计算结果可知CPU会自动地把标志位设为:CF=0,SF=1,ZF=0,OF=0,PF=0,即无进位,结果为负数,结果不为0,没有溢出,奇数个1

DEBUG下的标志位表示

标志名 标志 值为1 值为0
进位标志 CF CY NC
符号标志 SF NG PL
零标志 ZF ZR NZ
溢出标志 OF OV NV
辅助进位标志 AF AC NA
奇偶标志 PF PE PO
方向标志 DF DN UP
中断标志 IF EI DI

数的补码表示

在计算机中,对带符号数可用真值和机器数两个概念表示。真值,就是带有“+”、“-”号的实际数值;所谓机器数,则是把“+”、“-”符号数值化(0、1)后所得到的计算机实际能表示的数。
机器数有三种码表示,分别是原码、反码和补码。汇编语言中,数都是以补码的形式表示的,因此必须掌握数的补码表示和补码的运算。这三种码的定义如下:
1. 原码。原码将最高位作为符号位,正数为0,负数为1,其余7位作为数值位。
2. 反码。正数的反码与正数的原码一样。而求负数的反码时,符号位为1,数值位在原码的基础上求反。
3. 补码。正数的补码与正数的原码一样。求负数的补码时,符号位为1,数值位在原码的基础上求反加1。

例 十进制数+5和-5分别表示成二进制数原码、反码和补码。
[+5] 原=[+5] 反=[+5] 补=00000101B
[-5] 原=10000101B
[-5] 反=11111010B
[-5] 补=11111011B

猜你喜欢

转载自blog.csdn.net/wjc19911118/article/details/73201424