欢迎来到天天文库
浏览记录
ID:5611601
大小:22.92 KB
页数:5页
时间:2017-12-20
《常用汇编标识符和指令集》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、寄存器:数据寄存器分为: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位寄存器可
2、以分别寻址,并单独使用。另一组是指针寄存器和变址寄存器,包括:SP(StackPointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置;BP(BasePointer):基址指针寄存器,可用作SS的一个相对基址位置;SI(SourceIndex):源变址寄存器可用来存放相对于DS段之源变址指针;DI(DestinationIndex):目的变址寄存器,可用来存放相对于ES段之目的变址指针。指令指针IP(InstructionPointer)标志寄存器FR(FlagRegister)OF(overflowflag)溢出则=1DF(directionflag)
3、CF(carrierflag)第四位借第三位=1PF(parityflag)AF(auxiliaryflag)ZF(zeroflag)=0则=1SF(signflag)IF(interruptflag)TF(trapflag)段寄存器(SegmentRegister)为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址:CS(CodeSegment):代码段寄存器;DS(DataSegment):数据段寄存器;SS(StackSegment):堆栈段寄存器;ES(ExtraSegment):附加段寄存器。第一部分:指令助记符:一、数据传送指令1
4、.通用数据传送指令MOV(Move)传送PUSH(Pushontothestack)进栈a)高字节SP-1低字节SP-2SP=SP-2b)PUSHAPUSHADPUSHFPUSHFDPOP(Popfromthestack)出栈a)低字节SP高字节SP+1SP=SP+2B)POPADPOPAPOPFDPOPFXCHG(Exchange)交换2.累加器专用传送指令IN(Input)输入OUT(Output)输出XLAT(Translate)换码DS:[AL+BX]=AL3.有效地址送寄存器指令LEA(Loadeffectiveaddress)有效地址送寄存器LDS(
5、LoadDSwithPointer)指针送寄存器和DSLES(LoadESwithPointer)指针送寄存器和ES4.标志寄存器传送指令LAHF(LoadAHwithflags)标志寄存器8位送AHSAHF(storeAHintoflags)AH送标志寄存器8位PUSHF(pushtheflags)标志进栈POPF(poptheflags)标志出栈二、算术指令1.加法指令ADD(add)加法ADC(addwithcarry)带进位加法INC(increment)加12.减法指令SUB(subtract)减法SBB(subtractwithborrow)带借位减
6、法DEC(Decrement)减1CMP(Compare)比较只改变标志位,不改变目的操作数3.乘法指令MUL(UnsignedMultiple)无符号数乘法A)8位乘法,内容放在AXB)16位乘法,内容放在DX(高位)AX(低位)IMUL(SignedMultiple)带符号数乘法乘法不允许使用立即数,除非是带符号的立即数乘法。4.除法指令DIV(Unsigneddivide)无符号数除法IDIV(Signeddivide)带符号数除法A)8位商AL余数AHB)16位商AX余数DXC)除以0,或者溢出均错误CBW(Convertbytetoword)字节转换为
7、字(有符号数)CWD(Contertwordtodoubleword)字转换为双字(有符号数)三、逻辑指令1.逻辑运算指令AND(and)逻辑与OR(or)逻辑或NOT(not)2的补码逻辑非NEG1的补码XOR(exclusiveor)异或TEST(test)只改变标志寄存器的状态的AND测试2.移位指令SHL(shiftlogicalleft)逻辑左移SAL(shiftarithmeticleft)算术左移SHR(shiftlogicalright)逻辑右移SAR(shiftarithmeticright)算术右移逻辑移位用于无符号数算术移位用于有符号数RO
8、L(Rotateleft
此文档下载收益归作者所有