汇编语言学习总结

隐身守侯 提交于 2020-03-13 09:39:46

8086CPU 总共有14 个16位寄存器:

        1、通用寄存器:8个

        2、指令指针:1个

        3、标志寄存器:1个 18位

        4、段寄存器:4个

1、通用寄存器:数据寄存器4个  、、、 指针寄存器及变址寄存器4个

       a、数据寄存器可以分为 高8位、低8位,可以分别寻址

              AX = AH &AL:累加寄存器--------------运算、与外部IO通信

              BX = BH & BL:基址寄存器-------------地址索引

              CX =CH & CL:计数寄存器-------------计数--------移位指令、循环(loop)

                DX = DH & DL:数据寄存器-------------数据传递

        b、指针寄存器和变址寄存器

              SP(Stack Pointer):堆栈指针寄存器-----------------SS:SP->目前的堆栈位置

              BP(Base Pointer):基址指针寄存器------------------SS: BP

              SI(Source Index):源变址寄存器    ------------------DS:SI

              DI(Destination Index):目的变址寄存器-------------ES:DI

2、指令指针IP(Instruction Pointer)

       IP指向的是指令地址的段内地址偏移量,又称偏移地址(Offset Address)或有效地址(EA,Effective Address)

 3、标志寄存器FR(Flag Register)18位———> 9个位有意义——》6个状态位,3位控制位

              OF:溢出标示位

              DF:方向标志位

              IF:中断允许标示位

              TF:跟踪标志

              SF:符号标志位

              ZF:零标志

              AF:辅助进位标志

              PF:奇偶标志

              CF:进位标志

4、段寄存器(Segment Register)

                CS(Code Segment):代码段寄存器;
              DS(Data Segment):数据段寄存器;
              SS(Stack Segment):堆栈段寄存器;
              ES(Extra Segment):附加段寄存器

 

 

  DS 所指的64K,这就是COM文件不得大于64K的原因。8086以内存做为战场,用寄存器做为军事基地,以加速工作

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!