`
xshq
  • 浏览: 43983 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

8086寄存器

    博客分类:
  • pc
UP 
阅读更多

通用寄存器
AH&AL=AX(accumulator):累加寄存器,常用于运算;在乘除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界传送数据。
BH&BL=BX(base):基址寄存器,常用于地址索引。
CH&CL=CX:计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器。
DH&DL=DX:数据寄存器,常用于数据传递。

 

段寄存器
CS(Code Segment):代码段寄存器
DS(Data Segment):数据段寄存器
SS(Stack Segment):堆栈段寄存器
ES(Extra Segment):附加段寄存器

 

指针寄存器和变址寄存器
SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置。
BP(Base Pointer):基址指针寄存器,可用作SS的一个相对基址位置。
SI(Source Index):源变址寄存器,可用来存放相对于DS段之源变址指针。
DI(Destination Index):目的变址寄存器,可用来存放相对于ES段之目的变址指针。

 

IP(Instruction Pointer):指令指针

 

PSW(Program Status Word):程序状态寄存器
ZF(Zero Flag):零标志位,用来反映运算结果是否为0。如果运算结果为0,则其值为1,否则其值为0。
PF(Parity Flag):奇偶标志位,用来反映运算结果中“1”的个数的奇偶性,如果“1”的个数为偶数,则PF的值为1,否则其值为0。
SF(Sign Flag):符号标志位,用来反映运算结果的符号位,它与运算结果的最高位相同。
CF(Carry Flag):进位标志位,用来反映运算结果是否产生进位或借位,如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则为0。
OF(Overflow Flag):溢出标志位,用来反映有符号数加减运算所得结果是否溢出。如果运算结果超出当前运算位数所能表示的范围,则称为溢出,OF的值被置为1,否则,OF的值被清为0。
DF(Direction Flag):方向标志位,用来决定在串操作指令执行时有关指针寄存器发生调整的方向。
IF(Interrupt Flag):中断标志位,IF=1处理可屏蔽中断,IF=0不出来可屏蔽中断。
TF(Trace Flag):跟踪标志位,该标志可用于程序调试,没有专门的指令来设置或清除。
AF(Auxiliary carry Flag):辅助进位标志位,在字操作时,发生低字节向高字节进位或借位时;在字节操作时,发生低4位向高4位进位或借位时。

 

相关指令
abc(c-carry):带进位加法指令。它利用了CF位上记录的进位值。
sbb(b-borrow):带借位减法指令。它利用了CF位上记录的借位值。
cmp(compare):比较指令。它的功能相当于减法指令,只是不保存结果。
je(e-equal):ZF=1则转移
jne(ne-not equal):ZF=0则转移
jb(b-below):CF=0则转移
jnb(nb-not below):CF=0则转移
ja(a-above):CF=0且ZF=0则转移
jna(na-not above):CF=1或ZF=1则转移
movesb(b-byte):传送一个字节
movesw(w-word):传送一个字
rep movesb(rep-repeat):循环执行字节串传送指令
rep movesw(rep-repeat):循环执行字串传送指令
cld(clear DF):将DF置0
std(set DF):将DF置1
pushf(push flag):将标志寄存器的值压栈
popf(pop flag):从栈中弹出数据送入标志寄存器

 

Debug中标志位的表示:
标志位 值为1 值为0
OF(Overflow Flag)         OV(overflow)          NV(no overflow)
SF(Sign Flag)             NG(negative)          PL(plus)
ZF(Zero Flag)             ZR(zero)              NZ(no zero)
PF(Parity Flag)           PE(parity even)       PO(parity odd)
CF(Carry Flag)            CY(carry)             NC(no carry)
DF(Direction Flag)        DN(down)              UP(up)
AF(Auxiliary carry Flag)  AC(assistant carry)   NA(no assistant carry)
IF(Interrupt Flag)        EI(enable interrupt)  DI(disable interrupt)
TF(Trace Flag)

分享到:
评论

相关推荐

    8086寄存器编码表

    在汇编语言编程中,理解8086寄存器及其编码表至关重要,因为这些寄存器是程序执行时数据存储和操作的主要单元。 8086处理器有14个16位寄存器,它们可以被单独使用,也可以拆分为8位的低字节和高字节部分。这些...

    8086 寄存器

    #### 一、8086寄存器概述 8086 CPU拥有多个16位寄存器,可以分为通用寄存器、段寄存器、指令指针寄存器和标志寄存器等几大类。这些寄存器不仅支持16位操作,也支持8位操作,即每个16位寄存器可以拆分为两个独立的8...

    汇编语言8086寄存器课件

    **汇编语言8086寄存器课件** 在计算机科学中,汇编语言是一种低级编程语言,它直接对应于计算机硬件的指令集。8086是英特尔公司设计的一种16位微处理器,它是IBM PC及其兼容机的基础。理解和掌握8086汇编语言对于...

    一个基于proteus的8086操作寄存器仿真实验

    在进行8086寄存器操作实验时,常见的任务可能包括: 1. 存储和检索数据:演示如何使用寄存器存储并从内存中读取数据。 2. 算术运算:展示加法、减法、乘法和除法指令在寄存器上的应用。 3. 位操作:使用位操作指令...

    8086 CPU 寄存器简介

    8086 CPU 寄存器简介 本篇博文主要介绍了 8086 CPU 中的寄存器,旨在帮助读者了解 CPU 中的寄存器的作用和功能。本文从 Intel CPU 的发展史开始,介绍了 8086 CPU 的特点和发展历程,然后深入探讨了 8086 CPU 中的...

    8086cpu寄存器详解.doc

    8086 CPU 寄存器详解 在8086处理器中,寄存器是处理器内部用于存储数据和指令的重要组成部分。它们分为多种类型,各自有着特定的用途,极大地提高了处理速度和效率。 1. **通用寄存器**: - EAX:累加器,用于...

    8086语言编汇寄存器详解

    【8086语言编汇寄存器详解】 在8086微处理器中,寄存器是核心组件,它们负责存储指令、数据和地址,加快处理速度。寄存器通常按照位宽来命名,例如8位或32位寄存器。8086处理器拥有14个16位寄存器,分为以下几类: ...

    8086指令集英文版1

    以下是8086指令集的详细介绍,包括寄存器结构和寻址方式。 1. **8086 寄存器组成**: - 8086 有14个16位寄存器,可以拆分为更小的8位部分。 - **通用数据寄存器**:AX(累加器)、BX(基址寄存器)、CX(计数器)...

    8086_8088 CPU的内部寄存器.png

    整理8086/8088 CPU的各内部寄存器的关系,方便记忆和理解,形成自己的思维导图

    8086通用寄存器组[借鉴].pdf

    8086微处理器是早期的一种16位处理器,它的设计包含了丰富的寄存器系统,以提高处理效率和性能。通用寄存器组是8086处理器中的关键组成部分,它们在软件开发中扮演着重要角色,特别是在汇编语言编程中。 8086处理器...

    Emu8086v4.07

    4. **8086寄存器**:8086处理器有16个寄存器,分为通用寄存器(AX, BX, CX, DX, SI, DI, BP, SP)和段寄存器(CS, DS, ES, SS)。它们在程序执行中扮演着关键角色,如存储数据、指针、地址等。 5. **编程实践**:...

    emu8086v4.08.zip

    - **8086寄存器**:了解16个通用寄存器(如AX, BX, CX, DX, SI, DI, SP, BP)以及指令指针IP、标志寄存器FLAGS等的作用。 - **寻址模式**:理解直接寻址、间接寻址、相对寻址、基址加变址等不同寻址方式。 - **...

    8086 汇编语言分支程序设计.pdf

    5. 8086 寄存器:包括通用寄存器、标志寄存器、段寄存器等,用于存储数据和指令。 6. 汇编语言编程:包括源程序的编写、汇编、链接、调试等步骤,用于生成可执行文件。 7. 程序设计方法:包括结构化设计、模块化...

    8086汇编软件

    2. **8086寄存器**:8086处理器有14个16位寄存器,包括AX、BX、CX、DX、SP、BP、SI、DI以及段寄存器CS、DS、ES、SS。这些寄存器在程序执行中起到存储数据和地址的作用。 3. **寻址方式**:8086支持直接、间接、相对...

    微机原理附表8086指令表

    3. **8086寄存器** - **通用寄存器**:AX、BX、CX、DX、SI、DI、SP、BP,其中AX、BX、CX、DX还可分为低8位(AL、BL、CL、DL)和高8位(AH、BH、CH、DH)。 - **段寄存器**:CS、DS、ES、SS,用于存储段地址,配合...

    接口技术平时作业(201709).pdf

    8086寄存器的使用灵活多样,例如: - AX常用于累加操作,AL用于I/O操作。 - SP和BP用于堆栈操作,SI和DI用于串处理指令中的源和目标地址。 - OF用于检查有符号数运算是否溢出,SF表示运算结果的正负。 - ZF为零...

    论 8086CPU 寄存器表示范围.docx

    在8086中,所有寄存器都是16位的,能够存储2个字节,每个字节包含8位,因此它们的表示范围是从00000H到0FFFFH。这个范围限制了在单个寄存器内所能表示的数值大小,对于一些超出此范围的算术运算,可能会出现数据溢出...

    8086汇编语言11篇汇编讲稿.rar

    三、8086寄存器 8086有14个寄存器,包括4个通用寄存器(AX, BX, CX, DX)、4个段寄存器(CS, DS, ES, SS)、2个指针寄存器(SP, BP)、2个变址寄存器(SI, DI)和2个标志寄存器(FLAGS)。这些寄存器在程序执行过程...

    我们学校的汇编课件,8086的

    【8086寄存器】 8086处理器拥有16个寄存器,分别是:AX、BX、CX、DX、SP、BP、SI、DI、CS、DS、ES、SS、IP。这些寄存器各有其特定用途,例如AX、BX、CX、DX通常用于数据处理,SP(堆栈指针)和BP(基址指针)用于...

    微处理器、寻址方式和指令系统

    3. **8086寄存器结构**: - **通用寄存器**:AX, BX, CX, DX用于存储数据和运算结果,每个寄存器可视为16位寄存器,也可拆分为两个独立的8位寄存器。累加器AX,基址寄存器BX,计数器CX,数据寄存器DX。此外,还有SP...

Global site tag (gtag.js) - Google Analytics