汇编-寄存器

 

8086CPU有14个寄存器:

AX    BX    CX     DX    SI    DI     SP     BP     IP      CS     SS     DS     ES      PSW

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

 

 

AX    BX(偏移地址寄存器)    CX(计数寄存器)     DX通常用来存放一般性数据被称为通用寄存器

这4个寄存器:每个寄存器可以拆开用,AX=AH+AL            BX=BH+BL        CX=CH+CL           DX=DH+DL

 

 段地址寄存器      :       偏移地址寄存器

      ds                                        si 

     es                                         di

      ss                                       bp

       cs                                       ip

                                                sp

                                                  bx

物理地址=基础地址+偏移地址

基础地址=段地址*10H

 

 

 

 

CS指令段地址寄存器 

 CPU将CS:IP组合出来的地址里面的内容全部当做指令

 

 

DS数据段地址寄存器

通常用来存放要访问数据的段地址

例如:我们要读取10000H地址中的数据

mov bx,1000

mov ds,bx

mov al,[0]      将1000H:0H【10000H】地址中数据送入al

 

SS栈顶段地址寄存器  

 sp栈顶偏移地址寄存器

 

 注意:栈只能操作字型数据

   sp默认值=0H

 

视频教程:https://www.bilibili.com/video/BV1ck4y1T71u/ 

 

bp寄存器

bp默认的段寄存器是ss

 

 

ES备用段地址寄存器 

si和di

si和di是8086CPU中和bx功能相近的寄存器,si和di不能够分成两个8位寄存器来使用。

段地址默认是ds

下面的3组指令实现了相同的功能

 

标志寄存器flag

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2023-06-02 07:16  天子骄龙  阅读(77)  评论(0)    收藏  举报