微机原理与接口技术(三)

一、8088内部寄存器

1、内部寄存器的类型

含14个16位寄存器,按功能可分为三类

  • 8个通用寄存器
  • 4个段寄存器
  • 2个控制寄存器

(1)通用寄存器

通用功能:暂放运算结果或者说中间运算结果。
8个通用寄存器按照特殊功能分类可以分为
①4个数据寄存器(AX,BX,CX,DX)
②2个地址指针寄存器(SP,BP)
③2个变址寄存器(SI,DI)

下面是通用寄存器的详细介绍:
数据寄存器

  • 8088/8086含4个16位数据寄存器,它们又可分为8个8位寄存器,即:
    AX => AH,AL
    BX => BH,BL
    CX => CH,CL
    DX => DH,DL
  • 数据寄存器特有的习惯用法
    AX:累加器。
    所有1/O指令都通过AX与接口传送信息,中闹运算结果也多放子AX中;
    BX:基址寄存器。
    在间接寻址中用于存放基地址;
    CX: 计数寄存器。
    用子在循环或串操作指令中存放计数值;
    DX:数据寄存器。
    在间接寻址的I/O指令中存放I/O端口地址;在32位乘除法运算时,存放高16位数。
  • 地址指针寄存器
    SP:堆栈指针寄存器,其内容为栈顶的偏移地址,只要有堆栈存在,SP一定被专用。
    BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址,可指向堆栈任意位置。
  • BX和BP在应用上的区别
    作为通用寄存器,二者均可用于存放数据;作为基址寄存器,用BX表示所寻找的数据在数据段;用BP则表示数据在堆栈段。
  • 变址寄存器
    SI: 源变址寄存器
    DI:目标变址寄存器
    变址寄存器在指令中常用于存放数据在内存中的地址。

(2)控制寄存器

IP:指令指针寄存器,其内容为下一条要取的指令的偏移地址。
FLAGS:标志寄存器,存放运算结果的特征,内含6个状态标志位(CF,SF,AF,PF,OF,ZF)、3个控制标志位(IF,TF,DF)。

状态标志位
  • CF(Carry Flag):进位标志位。 加(减)法运算时,若最高位有进(借)位则CF=1。无符号数运算溢出。
  • OF(Overflow Flag):溢出标志位。当算术运算的结果超出了有符号数的可表达范围时,OF=1。有符号数运算溢出
  • ZF(Zero Flag):零标志位。当运算结果为零时ZF=1。
  • SF(Sign Flag):符号标志位。当运算结果的最高位为1时,SF=1。

前面4个状态标志位对8/16位数的运算都是有效的,而以下2位状态标志位只针对(低)8位有效。

  • PF(Parity Flag):奇偶标志位。运算结果的低8位中“1”的个数为偶数时PF=1。
  • AF(Auxiliary Carry Flag):辅助进位标志位。加(减)操作中,若Bit3向Bit4有进位(借位),AF=1。
控制标志位
  • TF(Trap Flag):陷阱标志位,也叫跟踪标志位。TF=1时,使CPU处于单步执行指令的工作方式。
  • IF(Interrupt Enable Flag):中断允许标志位。IF=1使CPU可以响应可屏蔽中断请求。
  • DF(Direction Flag):方向标志位。在数据串操作时确定操作的方向。

(3)段寄存器

作用:用于存放相应逻辑段的段基地址。

8088/8086内存中逻辑段的类型:

  1. 代码段:存放指令代码;
  2. 数据段:存放操作的数据;
  3. 附加段:存放操作的数据;
  4. 堆栈段:存放暂时不用但需保存的数据。

段寄存器:

  • CS:代码段寄存器,存放代码段的段基地址;
  • DS:数据段寄存器,存放数据段的段基地址;
  • ES:附加段寄存器,存放附加段的段基地址;
  • SS:堆栈段寄存器,存放堆栈段的段基地址。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

后天必早起

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值