精华内容
下载资源
问答
  • 寄存器

    2021-01-28 16:52:30
    数码寄存器是用于暂时存放数码的一种逻辑记忆电路,简称寄存器。它可以接收、暂存、传递数据。如下为74LS174六位寄存器逻辑电路图: 移位寄存器除了具有记忆数码功能,还具有移位功能。移位寄存器在进行移位操作时,...

    寄存器分数码寄存器和移位寄存器。数码寄存器是用于暂时存放数码的一种逻辑记忆电路,简称寄存器。它可以接收、暂存、传递数据。如下为74LS174六位寄存器逻辑电路图:在这里插入图片描述

    移位寄存器除了具有记忆数码功能,还具有移位功能。移位寄存器在进行移位操作时,每来一个移位脉冲(CP),寄存器中存放的数码向左或向右移一位,且仅移一位。如74LS395是一个集成的具有异步清零、三态输出、可并行输入的单向移位寄存器。

    展开全文
  • 寄存器简称 全称 =1 =0 详解 CF Carry Flag(进位标志) 进位 无进位 用于反映运算是否产生进位或借位。如果运算结果的最高位产生一个进位或借位,则CF置1,否则置0。运算结果的最高位包括字操作的第15位和...
    寄存器简称 全称 =1 =0 详解
    CF Carry Flag(进位标志) 进位 无进位 用于反映运算是否产生进位或借位。如果运算结果的最高位产生一个进位或借位,则CF置1,否则置0。运算结果的最高位包括字操作的第15位和字节操作的第7位。移位指令也会将操作数的最高位或最低位移入CF。
    PF Parity Flag(奇偶标志) 用于反映运算结果低8位中“1”的个数。“1”的个数为偶数,则PF置1,否则置0。
    AF Auxiliary Carry Flag(辅助进位标志) 进位 无进位 算数操作结果的第三位(从0开始计数)如果产生了进位或者借位则将其置为1,否则置为0,常在BCD(binary-codedecimal)算术运算中被使用
    OF Overflow Flag(溢出标志) 溢出 未溢出 反映有符号数加减运算是否溢出。如果运算结果超过了8位或者16位有符号数的表示范围,则OF置1,否则置0。
    SF Sign Flag(符号标志) 用于反映运算结果的符号,运算结果为负,SF置1,否则置0。因为有符号数采用补码的形式表示,所以SF与运算结果的最高位相同。
    ZF Zero Flag(零标志) 非零 用于判断结果是否为0。运算结果0,ZF置1,否则置0。
    展开全文
  • 1 认识标志寄存器 标志寄存器 CPU内部有一种寄存器,具有三种作用: 1)存储相关指令的某些执行结果;...标志寄存器简称flag; 8086标志寄存器有16位,其中存储的信息称为程序状态字(PSW); flag是按位...

    1 认识标志寄存器

     

    标志寄存器
        CPU内部有一种寄存器,具有三种作用:
        1)存储相关指令的某些执行结果;
        2)用来为CPU执行相关指令提供行为依据;
        3) 用来控制CPU的相关工作方式;
        这种寄存器在8086中称为标志寄存器;标志寄存器简称flag;
        8086标志寄存器有16位,其中存储的信息称为程序状态字(PSW);
        flag是按位起作用;
        flag的1、3、5、12、13、14、15位在8086CPU中没有使用;

    进入emu8086;
    按emulate按钮,弹出emulator窗口;
    按flags按钮,弹出flags窗口,即标志寄存器;各位初始值如图;
    按analyse按钮,弹出 lexical flag analyser窗口;表示出flags当前各位的值所表示的意义;
        例如ZF是零标志位;

     

    2 零标志,奇偶标志

     

    ZF标志
        零标志位;flag第6位;
        记录相关指令执行后,结果是否为0;
        结果为0,zf=1;否则,zf=0;
     
    mov ax,1
    sub  ax,1
    执行后结果为0;zf=1;

    mov ax,1
    and ax, 0
    执行后,结果为0,zf=1;

    有的指令是影响标志寄存器的,大都是运算指令;
    有的指令不影响标志寄存器,大都是传送指令;

    PF标志
        flag第二位;奇偶标志位;
        记录指令执行后,结果的所有bit位中1的个数是否为偶数;
        1的个数为偶数,pf=1;否则=0;

    mov al, 1
    add al, 10
    执行后,结果为00001011B,3个1,则pf=0;

    mov al, 1
    or al, 2
    执行后,结果为00000011B,2个1,pf=1;

     

     

    3 符号标志

     

    SF标志
        flag的第7位;符号标志;
        记录指令执行后,结果是否为负;如果为负,sf=1;否则=0;
        计算机中通常用补码表示有符号数据;
        计算机中的一个数据可以看作有符号数,也可以看作无符号数;对于同一个二进制数据,计算机可以将它当作无符号数据来运算,也可以当作有符号数据来运算;
        CPU在执行add等指令的时候,就已经包含了两种含义,也将得到用同一种信息来记录的两种结果;
        SF标志,就是CPU对有符号数运算结果的一种记录,它记录数据的正负;

    mov al, 10000001B
    add al, 1
        执行后,结果为 10000010B,sf=1,表示:如果指令进行的是有符号数运算,那么结果为负;

    mov al, 10000001B
    add al, 01111111B
        执行后,结果为0,sf=0;表示:如果指令进行的是有符号数运算,那么结果为非负;

        某些指令影响flag的多个标记位;
        指令sub al, al执行后,ZF、PF、SF受影响,分别为:1,1,0;

     

    4 进位标志

     

    CF标志
        flag第0位;进位标志;
        一般情况下,在进行无符号数运算的时候,它记录了运算结果的最高有效位向更高位的进位值,或从更高位的借位值;
        两个8位数据:98H+98H;将产生进位;进位在8位数中无法保存;CPU把进位记录在CF;

    mov al, 98H
    add al, al  ;  执行后,al内容为30H,CF=1;
    add al, al  ; 执行后,al内容为60H, CF=0;

        两个数据做减法,可能向更高位借位;
        97H-98H,将产生借位,借位后,相当于计算197H-98H;CF也可以记录这个借位;

    mov al, 97H
    sub al, 98H  ;  执行后,al内容为FFH,CF=1,CF记录了向更高位的借位;
    sub al, al ;     执行后,al内容为0,CF=0;

     

    5 溢出标志

     

    OF标志
        在进行有符号数运算时,如结果超过了机器所能表示的范围称为溢出;
        8位有符号数,机器所能表示的范围是-128 - 127;16位有符号数,机器所能表示的范围是-32768-32767;
        
    mov al, 98
    add al, 99
        执行后将产生溢出;98+99=197;

    mov al, 0F0H;F0H,有符号数-16的补码;
    add al, 088H ;  88H,有符号数-120的补码;
        执行后将产生溢出;(-16) + (-120) = -136;

    如果在进行有符号数运算时发生溢出,那么运算的结果将不正确;

    flag的第11位是OF,溢出标志;发生溢出,OF=1;否则OF=0;

    CF和OF的区别:
        CF是对无符号数运算有意义,OF是对有符号数运算有意义;

    展开全文
  • 11.0 概述 CPU内部寄存器中,有一种特殊的寄存器(对不同的处理机,个数和结构可能不同),具有以下三种作用 (1) 用来存储相关指令的某些执行结果 (2) 用来为CPU执行相关指令提供行为依据 (3) ...以下标志寄存器简称flag...

    11.0 概述
      CPU内部寄存器中,有一种特殊的寄存器(对不同的处理机,个数和结构可能不同),具有以下三种作用
      (1) 用来存储相关指令的某些执行结果
      (2) 用来为CPU执行相关指令提供行为依据
      (3) 用来控制CPU的相关工作方式
      这种特殊的寄存器在8086CPU中被称为标志寄存器.标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW).以下标志寄存器简称flag.
      flag寄存器与其他寄存器不同,是按位起作用的,每一位都有专门的含义,记录特定的信息.
      15    14    13    12    11 OF 10 DF 09 IF 08 TF 07 SF 06 ZF 05    04 AF 03    02 PF 01    00 CF
     
    11.1 ZF标志
      零标志位,记录相关指令执行后,结果是否为0.如果结果为0,ZF=1,如果不为0,ZF=0.
      注:在8086CPU指令集中,有的指令的执行是影响标志寄存器的(大多是运算指令),有的指令的执行对标志寄存器没有影响(大多是传送指令).
     
    11.2 PF标志
      奇偶标志位,记录相关指令运行后,结果中所有bit位中1的个数是否为偶数,如果是偶数,PF=1,否则为0.
     
    11.3 SF标志
      符号标志位,表示结果是否为负,如果为负,SF=1,否则为0.
      注:CPU在执行ADD指令的时候,必然会影响到SF标志,至于我们需不需要这种影响,就看我们如何看待指令所进行的运算了.
     
    11.4 CF标志
      进位标志位.在进行>>无符号数<<运算的时候,记录了运算结果的最高有效位向更位的进位值,或从更高位的借位值.
     
    11.5 OF标志
      举出标志位,记录了>>有符号数<<运算结果是否溢出,溢出置1,否则置0.
     
      注:CF和OF的区别,CF是对无符号数运算有意义的标志,OF是对有符号数运算有意义的标志.他们之间没有任何关系.
     
    11.6 adc指令
      带进位加法指令(利用CF)
      adc reg1,reg2
      功能: (reg1)=(reg1)+(reg2)+CF
      注:adc所使用的借位值受上一条指令影响,可利用adc执行对任意大数据的加法(通过循环),但注意循环内部不要影响到CF.
     
    11.7 sbb指令
      带借位减法指令(利用CF)
      sbb reg1,reg2
      功能:(reg1)=(reg1)-(reg2)-CF
     
    11.8 cmp指令
      比较指令,功能相当于减法指令,只是不保存结果,但影响flag各个位,其他指令通过识别这些标志位来得知比较结果.
      影响的标志位有:zf,pf,sf,cf.of
     
      >>>>如果因为溢出而导致实际结果为负,那么逻辑上真正的结果必然为正,反之亦然<<<<
     
    11.9 检测比较结果的条件转移指令
      je:jump equal,等于则转移,判断zf=1
      jne:jump not equal,不等于刚转移,判断zf=0
      jb:jump below,低于则转移,判断cf=1
      jnb:jump not below,不低于则转移,判断cf=0
      ja:jump above,高于则转移,判断cf=0且zf=0
      jna:jump not above,不高于则转移,判断cf=1或zf=1
     
    11.10 DF标志和串传送指令
      DF:方向标志位,在串处理指令中,控制每次操作后si,di的增减.
      8086CPU中的串传送指令:movsb,movsw,经常配合rep使用,如rep movsb或rep movsw
      8086CPU提供两条指令对DF位进行设置.
      cld:置DF位为0.
      std:置DF位为1.
     
      movsb功能描述: mov es:[di],byte ptr ds:[si]
      movsw功能描述: mov es:[di],word ptr ds:[si]
     
     
    11.11 pushf和popf
      标志寄存器压栈,出栈指令
     
    11.12 标志寄存器在debug中的表示
      标志    值为1的标志    值为0的标志
      OF      OV             NV
      SF      NG             PL
      ZF      ZR             NZ
      PF      PE             PO
      CF      CY             NC
      DF      DN             UP
     
    实验11 编写子程序
      略

    转载于:https://www.cnblogs.com/AzikPhil/archive/2012/06/06/note_asm2_11.html

    展开全文
  • CPU内部的寄存器中,有一种特殊的寄存器(对于...在后面我们将标志寄存器简称为flag。 flag和其他寄存器不一样,其他寄存器都是用来存放数据的,都是整个寄存器具有一个含义。而flag寄存器是按位起作用的,也就是说,,
  • 前言在linux日常过开发调试中,总避免不了和CPU...先明确一点,本文将要讨论的是通用寄存器(后简称寄存器)。后面介绍寄存器使用规则或者惯例,只是GCC(G++)遵守的规则,为后面《linux栈回溯》系列文章奠定基础。...
  • 其中存储的信息被称为程序状态字(Program Status Word,PSW),以下将该寄存器简称为flag。 功能:1)用来存储相关指令的某些执行结果; 2)用来为CPU执行相关指令提供行为依据; 3)用来控制CPU的相关工作方式。 ...
  • x86寄存器

    千次阅读 2010-11-14 11:01:00
    根据寄存器的性质,把编程可见的寄存器分成9组,并给每个编程可见的寄存器(以后简称寄存器)取一个名称 2.2.1 通用寄存器 <br /> 通用寄存器中,32位寄存器EAX,EBX,ECX,EDX,EB
  • 简介:CPU内部的寄存器中,有一种特殊的寄存器(对于不同的...这种特殊的寄存器在8086CPU中,被称为标志寄存器(以下简称flag)。8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)。8086CPU的flag...
  • 标志寄存器

    千次阅读 2010-10-21 22:04:00
    CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数和结构都可能不同)具有三种作用: 1) 用来存储相关指令...简称flag。 flag和其他寄存器不一样,其他寄存器是用来存放数据的,都是整
  • PHY寄存器

    千次阅读 2021-02-26 09:47:49
    在之前的文章,我们讲解了STM32的网络...我们还需要与之通信的外部网络芯片,简称PHY芯片。我熟悉的PHY型号有:RTL8201F,RTL8201E,RTL8201G,DP83848,YT8512C等,原计划讲解RTL8201F的,但是内容太多,先把PHY寄..
  • X86寄存器详解

    千次阅读 2013-08-22 11:13:48
    寄存器是CPU内部用来放置数据和地址的存储单元,各种32位CPU中与微机原理...根据寄存器的性质,把编程可见的寄存器分成9组,并给每个编程可见的寄存器(以后简称寄存器)取一个名称 1 通用寄存器 通用寄存器中,32位寄
  • 1. 适用范围 本文档理论适用于Actel FPGA并且采用Libero软件进行静态时序分析(寄存器寄存器)。2. 应用背景 静态时序分析简称STA,它是一种穷尽的分析方法,它按照同步电路设计的要求,根据电路网表的拓扑结构...
  • 汇编语言 标志寄存器

    2018-10-23 15:06:37
    标志寄存器 CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数和结构都可能不同)具有三种作用: 1) 用来存储相关指令的某些执行结果; 2) 用来为CPU执行相关指令提供行为依据;...简称flag。...
  • 11.标志寄存器

    2013-01-11 15:36:00
    1.CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数和结构都有可能不同)具有以下3种作用。 ...本章中的标志寄存器(以下简称flag)使我们学习的最后一个寄存器. 2.flag寄存器是...
  • 51单片机SRF寄存器

    2016-01-06 16:59:00
    1、21个寄存器介绍51系列单片机内部主要有四大功能模块,分别是I/O口模块、中断模块、定时器模块和串口通信模块(串行I/O口),如其结构和功能如下...所以下面重点介绍一下51系列单片机内部的特殊功能寄存器简称SFR...
  • 前言上一节中我们讲到如何用逻辑门来构建一个ALU,它可以进行算术运算和逻辑运算,那么如果将算出来的结果...电脑用的是"随机存取存储器",简称为"RAM"!遇到这种状况,只是郁闷的份了。存储 1bit 的电路我们之前讲...
  • 8086CPU的标志寄存器简称flag寄存器,有16位,按位起作用,每一位都有其含义。 结构如图: 在8086CPU指令集中, 有的指令执行时影响标志寄存器的,比如add,sub,mul,div,inc,or,and 等,它们大都是运输指令...
  • 标志寄存器及其标志位

    万次阅读 2017-04-18 10:06:37
    标志寄存器: CPU内部的寄存器,(对于不同的处理机,个数和...8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字PSW(标志位),简称flag。flag和其他寄存器不一样,其他寄存器是用来存放数据的,都是
  • 访问外部设备寄存器的方法

    千次阅读 2017-07-31 15:35:07
    I/O接口 : 通常把介于主机和外设之间的一种缓冲电路称为I/O接口电路,简称I/O接口 I/O端口 : CPU与外设进行信息交换时,各类信息通过I/O接口存入不同的寄存器中.这些寄存器被称作I/O端口。若干端口加上相应的控制电路...
  • 寄存器和内存

    2019-09-30 23:04:34
    打游戏断电后损失数据,原因是电脑用“随机存取存储器”简称RAM中信息丢失,它只能在有点情况下存储东西,比如游戏状态。 另一种存储叫持久存储,电源关闭数据也不会丢失。 锁存器 我们拿一个OR门,把输入连回输出,...
  • CPU内部的寄存器中,有一种特殊的寄存器(对于...这种特殊的寄存器在8086CPU中,被称为标志寄存器(简称为flag)。8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)。flag和其他寄存器不一样,其...
  • 第十一节:标志寄存器cpu内部的寄存器中,有一种特殊的寄存器具有以下3种作用a.用来存储相关指令的某些执行结果 ...标志寄存器(简称flag),不同于其他的寄存器(用来存放的,整个寄存器都具有一个含义)
  • 本章中的标志寄存器(以下简称为flag)是我们要学习的最有一个寄存器 flag寄存器是按位起作用的,也就是说,它的每一位都有专门的含义,记录特定的信息 8086CPU的flag寄存器的结构: 1.flag的1、3、4、12、13、14、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 741
精华内容 296
关键字:

寄存器简称