2 寄存器

  • 通用寄存器

       

    8086CPU的所有寄存器都是16位的,可以存放两个字节。

    AX BX CX DX这次个寄存器通常用来存放一般性的数据,被称为通用寄存器。

    AX 分为 AL AH

    BX 分为 BL BH

    CX 分为 CL CH

    DX 分为 DL DH

       

  • 字在寄存器中的存储

       

    字节:记为byte,8bit,可以存在一个8位寄存器中

    字:记为word,一个字由两个bit构成

       

  • 几条汇编指令

       

    AL 可以作为独立8位寄存器使用,和AH没有关系,AL的进位不会存储在AH中。

    在数据传送时,要注意指令的连两个操作对象的位数应该是一致的。

       

  • 物理地址

    CPU访问内存单元时,要给出内存地址,所有内存单元构成是一个一维线性空间,每一个内存单元在这个空间都有一个唯一地址,这个地址叫物理地址。

       

    CPU通过地址总线送入存储器的,必须是一个内存单元物理地址,必须现在内部形成这个地址。

       

  • 16位结构的CPU

       

    运算器一次最多可处理16位数据

    寄存器最大宽度为16位

    寄存器和运算器之间的通路为16位

       

  • 8086CPU给出物理地址的方法

       

       

    物理地址 = 段地址 * 16 + 偏移地址

       

  • 物理地址 = 段地址 * 16 + 偏移地址的本质含义

       

    基址地址 + 偏移地址

       

  • 段的概念

       

    我么可以认为 地址 10000H ~100FFH 的内存单元组成一个段,该段的起始地址为10000H, 段地址为1000H, 大小为100H;

    段的起始地址一定是16的整数倍,偏移地址16位,最大寻址能力64KB

       

  • 段寄存器

    8086有4个段寄存器 CS\DS\SS\ES

       

  • CS 和 IP

    CS 和 IP是8086CPU中最关键的寄存器,他们指示了CPU当前要读取指令的地址。

    CS 位代码段寄存器, IP 位指令指针寄存器

       

       

  • 修改CS 、IP 指令

       

       

       

  • 代码段

       

    根据需要,可以将一组内存单元定义为一个段(≤64KB)

posted @ 2018-10-23 21:36  苦瓜与我常在  阅读(193)  评论(0)    收藏  举报