汇编语言指令大全..doc 全文免费

       指令(instruction)是一样文句,它在顺序汇编编译时变得可履行。

       下表列出了Mod字段。

       在下的案例中,头条指令MOV生成了3字节的机器代码。

       1)标标(label)是一样标识符,是指令和据的地位标记。

       例上述的案例,咱就不许像高等语言一样径直应用数据,而是先要从相对应的存器AX、BX中把数据取出。

       例如,在mov指令中,数据即从源操作数复制到鹄的操作数。

       需求留意的是现时除去电脑出产厂家的专业人手外,普通是不需求念书机器语言了。

       当指令有多个操作数时,平常头个操作数被称为鹄的操作数,二个操作数被称为源操作数(sourceoperand)。

       示范如次:COMMENT!Thislineisacomment.Thislineisalsoacomment.!其它记号也得以应用,只要该记号不现出时诠注行中:COMMENT&Thislineisacomment.Thislineisalsoacomment.&自然,顺序员应当在整个顺序中供诠注,特别是代码图不太显明的地域。

       因而每一样微料理器都有本人的机器指令集,也即机器语言。

       4)诠注诠注是顺序编辑者与阅者交流水线序设计信息的紧要路径。

       你可能性关切的文档:汇编语言指令大全PAGE\\\\MERGEFORMAT15AAD未结合十进制数除法调整指令AAD(ASCIIAdjustforDivision)格式:AAD作用:在除法指令前对AX中的两个未结合十进制数进展调整,以便能用DIV指令兑现两个未结合的十进制数的除法演算,其后果为未结合的十进制数,商(在AL中)和仂(在AH中).介绍:1.AAD指令是在履行除法DIV事先应用的,以便取得二进制后果存于AL中,然后除以OPRD,取得的商在AL中,仂在AH中.2.示范:MOVBL,5MOVAX,0308HAAD;(AL)<\\--1EH+08H=26H,(AH)<\\--0DIVBL;商=07H-->(AL),仂=03H–>(AH).AND论理与演算指令AND格式:ANDOPRD1,OPRD2作用:对两个操作数兑现按位论理与演算,后果送至鹄的操作数.本指令得以进展字节或字的‘与’演算,OPRD1<\\--OPRD1andOPRD2.介绍:1.鹄的操作数OPRD1为任一通用存器或存储器操作数.源操作数OPRD2为立即数,任一通用存器或存储器操作数.2.示范:ANDAL,0FH;(AL)<\\--(AL)AND0FHANDAX,BX;(AX)<\\--(AX)AND(BX)ANDDX,BUFFERSI+BXANDBETABX,00FFH留意:两数相处,有一个数假则值为假CALL进程调用指令CALL格式:CALLOPRD作用:进程调用指令介绍:1.内中OPRD为进程的鹄的地点.2.进程调用可分成段内调用和段间调用两种.寻址方式也得以分成径直寻址和转弯抹角寻址两种.3.本指令不反应标记位.CLC料理器统制指令-标记位操作指令格式:CLC;置CF=0STC;置CF=1CMC;置CF=(NotCF)进位标记求反CLD;置DF=0STD;置DF=1CLI;置IF=0,CPU取缔应大面儿中止STI;置IF=1,使CPU容许向应大面儿中止作用:完竣对标记位的置位、复位等操作.介绍:比如串操作中的顺序,时常用CLD指令清方位标记使DF=0,在串操作指令履行时,按增量的方式改动吕表针.CLD料理器统制指令-标记位操作指令格式:CLC;置CF=0STC;置CF=1CMC;置CF=(NotCF)进位标记求反CLD;置DF=0STD;置DF=1CLI;置IF=0,CPU取缔应大面儿中止STI;置IF=1,使CPU容许向应大面儿中止作用:完竣对标记位的置位、复位等操作.介绍:比如串操作中的顺序,时常用CLD指令清方位标记使DF=0,在串操作指令履行时,按增量的方式改动吕表针.CLI料理器统制指令-标记位操作指令格式:CLC;置CF=0STC;置CF=1CMC;置CF=(NotCF)进位标记求反CLD;置DF=0STD;置DF=1CLI;置IF=0,CPU取缔应大面儿中止STI;置IF=1,使CPU容许向应大面儿中止作用:完竣对标记位的置位、复位等操作.介绍:比如串操作中的顺序,时常用CLD指令清方位标记使DF=0,在串操作指令履行时,按增量的方式改动吕表针.CMC料理器统制指令-标记位操作指令格式:CLC;置CF=0STC;置CF=1CMC;置CF=(NotCF)进位标记求反CLD;置DF=0STD;置DF=1CLI;置IF=0,CPU取缔应大面儿中止STI;置IF=1,使CPU容许向应大面儿中止作用:完竣对标记位的置位、复位等操作.介绍:比如串操作中的顺序,时常用CLD指令清方位标记使DF=0,在串操作指令履行时,按增量的方式改动吕表针.CMP比效指令CMP(CoMPare)格式:CMPOPRD1,OPRD2作用:对两数进展相减,进展比.介绍:1.OPRD1为肆意通用存器或存储器操作数.OPRD2为肆意通用存器或存储器操作数,立即数也可用作源操作数OPRD2.2.对标记位的反应同SUB指令,完竣的操作与SUB指令类似,绝无仅有区分是不将OPRD1-OPRD2的后果送回OPRD1,而但是比.3.在8088/8086指令系中,专供了一组依据带记号数比老幼后,兑现环境转移的指令.CMPS字符串比指令格式:CMPSOPRD1,OPRD2CMPSBCMPSW作用:由SI,若要完整了解汇编语言操作码和操作数,就需求花些时刻了解汇编指令译者成机器语言的法子。

       顺序员用汇编语言写出源代码,再用汇编编译器将其编译为机器码,最后由电脑履行。

       对Intel指令编码和解码的逐渐解说最少将有助于唤醒对MASM笔者们辛劳职业的了解和玩赏。

       咱所要懂得的是如何看懂汇编语言就行了。

       IMUL指令有三个操作数,头个是鹄的操作数,二个和三个是进展乘法的源操作数:imuleax,ebx,5在上例中,EBX与5相乘,后果寄放在EAX存器中。

       最佳答案IBM-PC汇编语言指令集数据传递指令集MOV作用:把源操作数送给鹄的操作数语法:MOV鹄的操作数,源操作数格式:MOVr1,r2MOVr,mMOVm,rMOVr,dataXCHG作用:互换两个操作数的数据语法:XCHG格式:XCHGr1,r2XCHGm,rXCHGr,mPUSH,POP作用:把操作数压入或取出堆栈语法:PUSH操作数POP操作数格式:PUSHrPUSHMPUSHdataPOPrPOPmPUSHF,POPF,PUSHA,POPA作用:堆栈指令群格式:PUSHFPOPFPUSHAPOPALEA,LDS,LES作用:取地点至存器语法:LEAr,mLDSr,mLESr,mXLAT(XLATB)作用:查表指令语法:XLATXLATm算演算指令ADD,ADC作用:加法指令语法:ADDOP1,OP2ADCOP1,OP2格式:ADDr1,r2ADDr,mADDm,rADDr,data反应标记:C,P,A,Z,S,OSUB,SBB作用:减法指令语法:SUBOP1,OP2SBBOP1,OP2格式:SUBr1,r2SUBr,mSUBm,rSUBr,dataSUBm,data反应标记:C,P,A,Z,S,OINC,DEC作用:把OP的值加一或减一语法:INCOPDECOP格式:INCr/mDECr/m反应标记:P,A,Z,S,ONEG作用:将OP的记号反相(取二进制补码)语法:NEGOP格式:NEGr/m反应标记:C,P,A,Z,S,OMUL,IMUL作用:乘法指令语法:MULOPIMULOP格式:MULr/mIMULr/m反应标记:C,P,A,Z,S,O(仅IMUL会反应S标记)DIV,IDIV作用:除法指令语法:DIVOPIDIVOP格式:DIVr/mIDIVr/mCBW,CWD作用:有记号数扩充指令语法:CBWCWDAAA,AAS,AAM,AAD作用:非压BCD码演算调整指令语法:AAAAASAAMAAD反应标记:A,C(AAA,AAS)S,Z,P(AAM,AAD)DAA,DAS作用:缩小BCD码调整指令语法:DAADAS反应标记:C,P,A,Z,S位演算指令集AND,OR,XOR,NOT,TEST作用:履行BIT与BIT之间的论理演算语法:ANDr/m,r/m/dataORr/m,r/m/dataXORr/m,r/m/dataTESTr/m,r/m/dataNOTr/m反应标记:C,O,P,Z,S(内中C与O两个标记会被设为0)NOT指令不反应任何标记位SHR,SHL,SAR,SAL作用:移位指令语法:SHRr/m,data/CLSHLr/m,data/CLSARr/m,data/CLSALr/m,data/CL反应标记:C,P,Z,S,OROR,ROL,RCR,RCL作用:轮回移位指令语法:RORr/m,data/CLROLr/m,data/CLRCRr/m,data/CLRCLr/m,data/CL反应标记:C,P,Z,S,O顺序流水线统制指令集CLC,STC,CMC作用:设定进位标记语法:CLCSTCCMC标记位:CCLD,STD作用:设定方位标记语法:CLDSTD标记位:DCLI,STI作用:设定中止标记语法:CLISTI标记位:ICMP作用:比OP1与OP2的值语法:CMPr/m,r/m/data标记位:C,P,A,Z,OJMP作用:跳往指定地点履行语法:JMP地点JXX作用:当一定环境建立则跳往指定地点履行语法:JXX地点注:A:ABOVE,当C=0,Z=0时建立B:BELOW,当C=1时建立C:CARRY,当弁时建立CXZ:CX存器的值为0(ZERO)时建立E:EQUAL,当Z=1时建立G:GREATER(大于),当Z=0且S=0时建立L:LESS(小于),当S不为零时建立N:NOT(反而环境),需和其他记号匹配使用O:OVERFLOW,O=1时建立P:PARITY,P=1时建立PE:PARITYEVEN,P=1时建立PO:PARITYODD,P=0时建立S:SIGN,S=1时建立Z:ZERO,Z=1时建立LOOP作用:轮回指令集语法:LOOP地点LOOPE(Z)地点LOOPNE(Z)地点标记位:无CALL,RET作用:子顺序调用,归来指令语法:CALL地点RETRETn标记位:无INT,IRET作用:中止调用及归来指令语法:INTnIRET标记位:在履行INT时,CPU会机动将标记存器的值入栈,在履行IRET时则会将堆栈中的标记值弹回存器字符串操作指令集MOVSB,MOVSW,MOVSD作用:字符串传递指令语法:MOVSBMOVSWMOVSD标记位:无CMPSB,CMPSW,CMPSD作用:字符串比指令语法:CMPSBCMPSWCMPSD标记位:C,P,Z,S,OSCASB,SCASW作用:字符串搜索指令语法:SCASBSCASW标记位:C,P,Z,S,OLODSB,LODSW,STOSB,STOSW作用:字符串载入或存贮指令语法:LODSBLODSWSTOSBSTOSW标记位:无REP,REPE,REPNE作用:反复前缀指令集语法:REP指令SREPE指令SREPNE指令S标记位:依指令S而定对IBMPC机它有它的指令系,内中囊括:数据传递指令、串料理指令、算术指令、统制运动指令、论理指令、料理机统制指令。

       生成内存储器操作数有不一样的法子,例如,应用变量名、带方括号的存器等。

发表评论

电子邮件地址不会被公开。 必填项已用*标注