微机原理与接口技术指令记忆表.docx

上传人:b****1 文档编号:250619 上传时间:2022-10-07 格式:DOCX 页数:8 大小:15.01KB
下载 相关 举报
微机原理与接口技术指令记忆表.docx_第1页
第1页 / 共8页
微机原理与接口技术指令记忆表.docx_第2页
第2页 / 共8页
微机原理与接口技术指令记忆表.docx_第3页
第3页 / 共8页
微机原理与接口技术指令记忆表.docx_第4页
第4页 / 共8页
微机原理与接口技术指令记忆表.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

微机原理与接口技术指令记忆表.docx

《微机原理与接口技术指令记忆表.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术指令记忆表.docx(8页珍藏版)》请在冰豆网上搜索。

微机原理与接口技术指令记忆表.docx

微机原理与接口技术——8086/8088指令记忆表

寄存器:

数据寄存器分为:

AH&AL=AX(accumulator):

累加寄存器,常用于运算;在乘除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界设备传送数据.

BH&BL=BX(base):

基址寄存器,常用于地址索引;

CH&CL=CX(count):

计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器.

DH&DL=DX(data):

数据寄存器,常用于数据传递。

  他们的特点是,这4个16位的寄存器可以分为高8位:

AH,BH,CH,DH.以及低八位:

AL,BL,CL,DL。

这2组8位寄存器可以分别寻址,并单独使用。

另一组是指针寄存器和变址寄存器,包括:

SP(StackPointer):

堆栈指针,与SS配合使用,可指向目前的堆栈位置;

BP(BasePointer):

基址指针寄存器,可用作SS的一个相对基址位置;

SI(SourceIndex):

源变址寄存器可用来存放相对于DS段之源变址指针;

DI(DestinationIndex):

目的变址寄存器,可用来存放相对于ES段之目的变址指针。

指令指针IP(InstructionPointer)

标志寄存器FR(FlagRegister)

OF(overflowflag) 溢出则=1

DF(directionflag)

CF(carrierflag)   第四位借第三位=1

PF(parityflag) 

AF(auxiliaryflag)

ZF(zeroflag)      =0则=1

SF(signflag)

IF(interruptflag)

TF(trapflag)

段寄存器(SegmentRegister)

为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址:

CS(CodeSegment):

代码段寄存器;

DS(DataSegment):

数据段寄存器;

SS(StackSegment):

堆栈段寄存器;

ES(ExtraSegment):

附加段寄存器。

 

第一部分:

指令助记符:

一、数据传送指令

    1.通用数据传送指令

       MOV(Move)                      传送

       PUSH(Pushontothestack)     进栈

a)     高字节SP-1低字节SP-2 SP=SP-2

b)     PUSHAPUSHADPUSHFPUSHFD

       POP(Popfromthestack)       出栈

     a)低字节SP高字节SP+1SP=SP+2

     B)POPADPOPAPOPFDPOPF

       XCHG(Exchange)                交换

    2.累加器专用传送指令

       IN(Input)                           输入

       OUT(Output)                       输出

       XLAT(Translate)                   换码

    DS:

[AL+BX]=AL

    3.有效地址送寄存器指令

       LEA(Loadeffectiveaddress)      有效地址送寄存器

       LDS(LoadDSwithPointer)       指针送寄存器和DS

       LES(LoadESwithPointer)        指针送寄存器和ES

    4.标志寄存器传送指令

       LAHF(LoadAHwithflags)        标志寄存器8位送AH

       SAHF(storeAHintoflags)         AH送标志寄存器8位

       PUSHF(pushtheflags)            标志进栈

       POPF(poptheflags)               标志出栈

二、算术指令

    1.加法指令

       ADD(add)                             加法

       ADC(addwithcarry)                带进位加法

       INC(increment)                       加1

    2.减法指令

       SUB(subtract)                        减法

       SBB(subtractwithborrow)         带借位减法

       DEC(Decrement)                    减1

       CMP(Compare)                       比较 只改变标志位,不改变目的操作数

    3.乘法指令

       MUL(UnsignedMultiple)           无符号数乘法

A)     8位乘法,内容放在AX

B)     16位乘法,内容放在DX(高位)AX(低位)

       IMUL(SignedMultiple)            带符号数乘法

    乘法不允许使用立即数,除非是带符号的立即数乘法。

    4.除法指令

       DIV(Unsigneddivide)              无符号数除法

       IDIV(Signeddivide)                 带符号数除法

A)     8位商AL余数AH

B)     16位商AX余数DX

C)     除以0,或者溢出均错误

       CBW(Convertbytetoword)       字节转换为字(有符号数)

       CWD(Contertwordtodoubleword)   字转换为双字(有符号数)

三、逻辑指令

    1.逻辑运算指令

       AND(and)                      逻辑与

       OR(or)                           逻辑或

       NOT(not)       2的补码                 逻辑非

    NEG        1的补码

       XOR(exclusiveor)                  异或

       TEST(test)            只改变标志寄存器的状态的AND         测试

    2.移位指令

       SHL(shiftlogicalleft)               逻辑左移

       SAL(shiftarithmeticleft)         算术左移

       SHR(shiftlogicalright)              逻辑右移

       SAR(shiftarithmeticright)           算术右移

      逻辑移位用于无符号数算术移位用于有符号数

       ROL(Rotateleft)                     循环左移

       ROR(Rotateright)                   循环右移

       RCL(Rotateleftthroughcarry)    带进位循环左移

       RCR(Rotaterightthroughcarry)  带进位循环右移

四、串处理指令

     1.重复前端指令

       REP(Repeat)                  重复串操作直到(CX)=0为上

            REPE(Repeatwhenempty)    若(CX)=0,则退出,否则CX=CX+1;

            REPZ(Repeatwhenflag)     若ZF=0,则退出,否则CX=CX+1;

            REPC(Repeatwhencarryflag)

REPNE(Repeatwhennotempty)

            REPNZ(Repeatwhennotzeroflag)

            REPNC(Repeatwhennotcarryflag)

     2.串操作指令

       MOVSB(Movestringofbyte)     ES:

DI=ES:

SI    DI=DI+1/-1   串传送指令

          MOVSW(Movestringofword)      ES:

DI=ES:

SI     DI=DI+2/-2    串传送指令

            STOSB(Storestringofbyte)      fromal            存串指令

            STOSW(Storestringofword)      fromax           存串指令

            LODSB(Loadstringofbyte)      inal          取串指令

            LODSW(Loadstringofword)      inax       取串指令

      CLD(Cleardirectionflag)该指令使DF=0,在执行串操作指令时可使地址自动增量;

       STD(Setdirectionflag) 该指令使DF=1,在执行串操作指令时可使地址自动减量.

        INSB    ES:

DI=DX 串输入

        OUTSB  DX=ES:

DI 串输出

            DAA(Decimaladjustafteraddition)       组合BCD码的加法调整指令

            DAS(Decimaladjustaftersubstract)       组合BCD码的减法调整指令

        MOVSX 8位转换16位数字无符号用0填充

        MOVZX                   有符号用符号位填充

       CMPSB(Comparestringofbyte)       存储单元和存储单元      串比较指令

            SCASB(Scanstringofbyte)            存储单元和AX 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1