汇编常见寄存器以及标志位

通用寄存器

简写 英文全称 中文 作用
AX accumulator 累加器 存放操作数,与外部设备
BX base 通用寄存器 基址寄存器(计算存储器地址时用)
CX count 通用寄存器 保存计数值(移位指令,循环指令,串处理指令中用作隐含的计数器)
DX data 通用寄存器 双字长运算时存放高位字或存放I/O端口地址
SP stack pointer 堆栈指针寄存器 指示段顶的偏移地址
BP base pointer 基址指针寄存器 与堆栈段寄存器SS联用来确定堆栈段中的某一存储单元的地址
SI source index 源变址寄存器 与DS联用,用于数据段寻址
DI destination index 目的变址寄存器 与ES联用,用于附和段寻址

专用寄存器

条件码标志

简写 英文全称 中文 作用
IP instruction pointer 指令指针寄存器 存放代码段中的偏移地址
OF overflow flag 溢出标志 操作数超过机器能表示的范围时为1,否则为0
SF sign flag 符号标志 运算结果为负时为1,否则为0
ZF zero flag 零标志 运算结果为0时为1,否则为0
CF carry flag 进位标志 运算时最高有效位有进位时为1,否则为0
AF auxiliary carry flag 辅助进位标志 第三位有进位时为1,否则为0

控制标志位

简写 英文全称 中文 作用
DF direction flag 方向标志 控制串处理信息的方式

DF为1时, 每次操作后SI和DI减小

DF为0时, 每次操作后SI和DI增加

系统标志位

简写 英文全称 中文 作用
TF trap flag 陷阱标志 TF为1时,每条指令执行完后产生陷阱,由系统控制计算机;TF为0时,CPU正常工作,不产生陷阱
IF interrupt flag 中断标志 IF为1时允许CPU响应可屏蔽中断请求,否则关闭中断
IOPL I/O privilege level I/O特权级 在保护模式下用于控制对I/O地址空间的访问

段寄存器

简写 英文全称 中文 作用
CS code segment 代码段 存放当前正在运行的程序
DS data segment 数据段 存放当前运行程序所用的数据和串处理指令的源操作数
SS stack segment 堆栈段 定义了堆栈的所在区域,以后进先出的方式访问此区域
ES extra segment 附加段 辅助数据区,串处理指令的目的操作数存放区3

8086段寄存器和相应存放偏移地址的寄存器之间的默认组合

偏移
CS IP
SS SP或BP
DS BX,DI,SI或一个16位数
ES DI(用于串指令)

保护模式存储器寻址

系统按选择器的内容,根据指定的途径可以找到所选段对应的描述符,从而可以根据其给出的基地址和界限值,确定所要找的存储单元所在的段,再加上逻辑地址中指定的偏移地址,就可以找到相应的存储单元

逻辑地址

形式 偏移地址:段地址
组成 选择器和偏移地址
与实模式的区别 偏移地址为32位,最大段长为4GB

描述符

基地址(base) 用于指定段的起始地址
界限(limit) 存放该段的段长度
访问权(access rights) 说明该段在系统中的功能,并给出访问该段的一些控制信息
附加字段 表示该段的一些属性

外部设备与主机(CPU和存储器)的通信对应的外部接口

数据寄存器 存放要在外设和主机间传送的数据,起到缓冲器的作用
状态寄存器 保存外设或接口的状态信息,以便CPU在必要时测试外设状态
命令寄存器 将CPU控制命令送给外设或接口

使用外设对应的例行程序

简写 英文全称 名称 功能
BIOS basic input/output System 基本输入输出系统 存放在ROM中,层次比DOS低,偏硬件,完成对设备的直接命令或信息传送
DOS disk operation system 磁盘操作系统 开机时由磁盘装入存储器,在其例行程序中可以多次调用BIOS以完成更高级的功能

汇编常见寄存器以及标志位相关推荐

  1. Win32汇编:数组与标志位测试总结

    整理复习汇编语言的知识点,以前在学习<Intel汇编语言程序设计 - 第五版>时没有很认真的整理笔记,主要因为当时是以学习理解为目的没有整理的很详细,这次是我第三次阅读此书,每一次阅读都会 ...

  2. 计算机寄存器及标志位详解

    以下是计算机内部寄存器阵列图: 以下FR控制标志位及其含义: 1.     CF 进位标识位 进行加减运算时, 如果最高二进制位产生进位或错位, CF则为1, 否则为0. 程序设计中, 常用条件转移指 ...

  3. 标志寄存器及其标志位

    标志寄存器: CPU内部的寄存器,(对于不同的处理机,个数和结构都可能不同)具有三种作用: 用来存储相关指令的某些执行结果: 用来为CPU执行相关指令提供行为依据: 用来控制CPU的相关工作方式. 8 ...

  4. 【汇编/接口技术】标志位、指令的基础题目讲解

    目录 标志位的判断 1. 进位标志位 (CF) 2. 溢出标志位 (OF) 3. 辅助进位 (AF) 4. 奇偶标志位 (PF) 5. 符号标志位 (SF) 6. 零标志位 (ZF) 判断指令对错 M ...

  5. 8086cpu中,FR寄存器的标志位

    6个状态标志位 1. CF(Carry Flag)--进位标志位.当执行一个加法(或减法)运算,使最高位产生进位(或借位)时,CF为1:否则为0. 2. PF(Parity Flag)--奇偶标志位. ...

  6. x86架构所有寄存器和标志位详细信息(全名+作用)

    AX(accumulator):累加寄存器 BX(base):基址寄存器 CX(count):计数寄存器 DX(data):数据寄存器 SP(Stack Pointer):堆栈指针寄存器 BP(Bas ...

  7. 汇编:ZF(zero flag)标志位

    ZF:     ZR(ZERO)   NZ(NOT ZERO)

  8. 汇编:CF(carry flag)标志位

    F:flag CY: carry yes            NC:not carry CF只跟 add等运算指令有关. mov,push等移动指令不会改变CF.

  9. USART库函数中用于清除标志位的一些函数,如读DR寄存器的值清除标志位

    USART库函数中用于清除标志位的一些函数,如读DR寄存器的值清除标志位 刚学M4没多久,对于库函数的使用还有些陌生,因为之前学的是寄存器配置,今天在用库函数配置usart的时候,遇到了不知道该调用哪 ...

最新文章

  1. Silverlight Analytics Framework(开源分析框架)
  2. 科研文献|圈养和类人猿微生物组的共同多样化
  3. http://www.fx114.net/qa-24-116329.aspx
  4. [POI2007]堆积木Klo
  5. Spring MVC+Spring +Hibernate配置事务,但是事务不起作用
  6. 28个MongoDB经典面试题
  7. 你知道i=i++;的含义吗?原理其实没有你想的那么简单
  8. python open encoding_Python文件操作
  9. 高斯拟合原理_数据分析中的插值与拟合(2) —— 拟合
  10. 深度学习 --- BP算法详解(BP算法的优化)
  11. 遗传算法的手工模拟计算示例(通俗易懂)(包含遗传算法原理、遗传算法代码)
  12. Hastelloy C22合金板材 圆钢 无缝管
  13. CSS系列之连续的字母或数字在Html盒子中不会自动换行,直接溢出
  14. uwp版的音乐播放器练手
  15. Java中this关键字和super关键字用法
  16. 纯白的月光石(《月光石》中文版)
  17. 用C#开发带农历的日历
  18. OpenLayers加载WMS
  19. 已解决 java.sql.SQLException: 列名无效
  20. 支付宝和微信开发文档

热门文章

  1. FileProvider的使用
  2. 计算机视觉与模式识别代码合集第二版three
  3. 资源字典——程序集之间的资源共享
  4. Spring 配置文件加载原理
  5. server sql 多表事物 自增id_最实用的 SQL 语句收藏,程序员看完这篇就够了!
  6. druid 多数据源_SpringBoot+Mybatis+Druid+PageHelper 实现多数据源并分页
  7. eclipse打war包_jar包和war包的区别
  8. 硬盘坏道隔离工具fbdisk_如何屏蔽硬盘坏道 屏蔽硬盘坏道方法介绍【详解】
  9. python zip用法_python zip用法
  10. Spring-beans-BeanWrapper