ImageVerifierCode 换一换
格式:DOCX , 页数:135 ,大小:30.38KB ,
资源ID:11774225      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-11774225.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整word版微机原理指令整理.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

完整word版微机原理指令整理.docx

1、完整word版微机原理指令整理类别指令类型指令名称指令缩写指令功能影响标志格式格式含义源操作数目的操作数传送指令通用传输指令基本传输指令MOV将源操作数中的数据传送至目的操作数,以实现寄存器与寄存器、寄存器与存储器之间数据传送以及立即数送往寄存器或存储器无1.MOV WORD PTR 2000,AX 将AX送2000和2001单元(低位在低地址,高位在高地址,下同)至少有一个是寄存器(除立即数送存储器外); 不能在两个存储单元之间直接传送数据; 不能在两个段寄存器之间直接传送数据; 不能将立即数直接送至段寄存器;SS和SP赋值必须紧邻 指令指针IP既不作目的操作数也不做源操作数2.MOV AX

2、,ES:BX+SI+50将ES段(BX+SI+50)字单元内容送AX3.MOV SS,BX将BX内容送SS4.MOV ES,SS:DI+200将SS段(DI+200)字单元内容送ES5.MOV BX,CX将CS内容送BX6.MOV WORD PTR BX+DI,SS将SS内容送(BX+DI)字单元CS不能作目的操作数;立即数不能作目的操作数7.MOV CL,DH将DH内容送CL8.MOV DI,SI+100将(SI+100)字单元内容送DI9.MOV WORD PTR DI,DX将DX内容送(DI)字单元10.MOV CX,3330立即数3330送CX11.MOV BYTE PTR DI,0立

3、即数0送(DI)字节单元堆栈操作指令PUSH将来自通用寄存器、段寄存器或存储单元的一个字(16位)内容压入堆栈(SP指向的栈顶个单元)无1.PUSH AXAX内容进栈通用寄存器、段寄存器、存储单元的一个字CS不能作目的操作数;2.PUSH SISI内容进栈3.PUSH ESES内容进栈4.PUSH CSCS内容进栈5.PUSH WORD PTR BX(BX)和(BX+1)单元内容进栈6.PUSH WORD PTR BETA BX(BX+BETA)字单元内容进栈不能使用8位源或目的操作数POP将栈顶个单元的内容退出(弹出)到通用寄存器、段寄存器或存储单元无1.POP BX栈顶2个字节出栈到BX不

4、能使用8位源或目的操作数2.POP DX栈顶2个字节出栈到DX通用寄存器、段寄存器、存储单元的一个字节;CS不能作目的操作数3.POP ES栈顶2个字节出栈到ES4.POP SS栈顶2个字节出栈到SS5.POP BX+50栈顶2个字节出栈到(BX+50)字单元6.POP BP+DI栈顶2个字节出栈到(BP+DI)字单元交换指令XCHG实现数据宽度相同的源操作数与目的操作数之间的数据交换,亦即同为8位或16位的累加器与寄存器、寄存器与寄存器以及寄存器与存储单元之间的数据交换无1.XCHG AL,BLAL与BL之间字节交换段寄存器、CS、IP、立即数不能作为源或目的操作数; 两个存储单元之间、段寄

5、存器与段寄存器之间不能进行交换2.XCHG CX,AXCX与AX之间字交换3.XCHG DH,CLDH与CL之间字节交换4.XCHG BX,CXBX与CX之间字交换5.XCHG BL,1000BL与1000单元内容字节交换6.XCHG WORD PTR DI,DX(DI)字单元内容与DX字交换专用累加器传送指令换码指令XLAT专门使用累加器AL并将其中的值(比如按二进制、十进制或十六进制等编码)变换成内存某一表格区内对应的另一种编码(比如发光二极管LED的字形码或其他通讯码等)无MOV BX,TABLE_SEGCODE XLAT设置SEGCODE表首址对表进行检索有操作码,无操作数。 操作数A

6、L隐藏在操作码之中输入指令IN在I/O口独立编址时,使用专门的输入指令IN,这种输入操作又是指定累加器AL或AX来担当,因此,IN属于专用累加器传送指令无1.IN AL,60H8位口地址60H中的1个字节到AL不能使用除累加器外的其他寄存器进行操作; 不能使用大于255的地址作为8位口地址; 不能使用除DX外的其他寄存器作为16位间接口地址,且在间接口寻址时,须对DX预先置地址值2.IN AX,60H60H内容到AL,61H内容到AH3.IN AL,DX16位口地址(DX)单元内容到AL4.IN AX,DX(DX)及(DX+1)口内容到AX输出指令OUT在I/O口独立编址时,使用专门的输出指令

7、OUT,这种输出操作又是指定累加器AL或AX来担当,因此,OUT属于专用累加器传送指令无1.OUT 60H,ALAL中的字节输出到8位口60H不能使用除累加器外的其他寄存器进行操作; 不能使用大于255的地址作为8位口地址; 不能使用除DX外的其他寄存器作为16位间接口地址,且在间接口寻址时,须对DX预先置地址值2.OUT 60H,AXAX中的字输出到8位口60H及61H3.OUT DX,ALAL中的字节到16位口地址(DX)4.OUT DX,AXAX中的字到(DX)及(DX+1)口地址传送指令有效地址传送指令LEA将存储单元有效(偏移)地址EA(源操作数)装入一个16位通用寄存器(目的操作数

8、),以使该寄存器作为地址指针无1.LEA SP,1234H直接地址1234H装入SP存储器操作数(存储单元有效地址EA)作源操作数段寄存器、IP不能作目的操作数;16位通用寄存器(BX、BP、SI及DI)作目的操作数2.LEA BX,TABLE标号或变量TABLE代表的地址装入BX3.LEA SI,BX间接地址(BX)装入SI4.LEA DI,BX+100基址地址(BX+100)装入DI不能将存储器操作数与寄存器操作数在源与目的操作数的位置上互换(倒置)5.LEA DX,SI+200变址地址(SI+200)装入DX6.LEA AX,BP+DI+500基(址)变址地址(BP+DI+500)装入A

9、X使用DS段的地址指针传送指令LDS将双字地址指针(包括偏移地址和段地址)分别传送到指令中给出的16位寄存器及数据段寄存器DS中,双字地址指针从源操作数的双字内容即(EA)和(EA+2)字单元得到无1.LDS BX,3250H由直接地址得到双字地址指针存储器操作数(存储单元有效地址(EA)作为源操作数16位寄存器REG(BX、BP、SI及DI)作为目的操作数2.LDS SI,TMP由标号(符号地址)的内容得到双字地址指针3.LDS BP,BX由间接地址(BX)的内容得到双字地址指针4.LDS DI,BX+20由基址地址(BX+20)的内容得到双字地址指针5.LDS BX,DI+40由变址地址(

10、DI+40)的内容得到双字地址指针不能将存储器操作数(存储单元有效地址EA)与寄存器操作数在源与目的操作数的位置上互换(倒置)6.LDS BX,BP+SI+500由基(址)变址地址(BP+SI+500)的内容得到双字地址指针使用ES段的地址指针传送指令LES功能与上基本相同,差别在于能提供偏移地址直接访问和使用ES段的只有DI,而BX、SI及BP可通过段超越前缀(ES:)由默认的DS段或SS段改为访问ES段无标志传送指令低8位标志取入AH指令LAHF将标志寄存器中低8位FL取入寄存器AH中(AH-FL),以便于阅读和校核无低8位FL(SF、ZF、AF、PF、CF)寄存器AH存AH到低8位标志指

11、令SAHF将AH内容存到低8位标志寄存器FL中(FL-AH),以便于设置标志状况影响低8位标志位寄存器AH低8位FL(SF、ZF、AF、PF、CF)标志进栈指令PUSHF将16位标志寄存器F(FH、FL)的内容进栈,SP-SP-2,F的内容不变无16位标志寄存器F(FL、FH)堆栈标志出栈指令POPF将堆栈栈顶的2个字节弹出送16位标志寄存器F(FH、FL),SP-SP+2,影响标志寄存器的内容影响16位标志位堆栈栈顶的2个字节16位标志寄存器F(FL、FH)算术运算类指令加法类指令加法指令ADD将源操作数与目的操作数的内容相加,其结果(两者之和)存放于目的操作数,或者说将源操作数的内容加到目

12、的操作数中CF、PF、AF、ZF、SF及OF1.ADD DI,SI寄存器SI的内容加到DI中源与目的操作数不能同时为存储器操作数2.ADD CX,50005000和5001单元内容加到CX中寄存器、存储器或立即数寄存器或存储器; 不能是立即数3.ADD WORD PTR BP+DI+30,DX寄存器DX的内容加到(BP+DI+30)字单元中4.ADD WORD PTR SI+100,2040立即数2040加到(SI+100)字单元中5.ADD BH,86H立即数86H加到BH中6.ADD AX,FED0H立即数FED0H加到累加器AX中带进位的加法指令ADC功能与上基本相同,唯一不同之处是,在

13、源操作数与目的操作数的内容相加时,还要加上进位位CF的值CF、PF、AF、ZF、SF及OF与ADD相同与ADD相同与ADD相同与ADD相同增量(加1)指令INC将目的操作数的内容(8位或16位)加1,源操作数1隐含在操作码中。目的操作数为寄存器或存储器,但不能是段寄存器或立即数PF、AF、ZF、SF及OF, 不影响CF1.INC ALAL中的内容加1源操作数为1为寄存器或存储器; 不能是段寄存器或立即数2.INC DIDI中的内容加13.INC BYTE PTR 20002000存储单元内容加14.INC WORD PTR BP+SI+50(BP+SI+50)存储器字单元内容加1减法类指令减法

14、指令SUB将目的操作数的内容与源操作数的内容相减,其结果(两者之差)存放于目的操作数,或者说从目的操作数的内容中减去源操作数的内容CF、PF、AF、ZF、SF及OF。 CF=1,表示借位; OF=1,溢出1.SUB CH,DLCH中的内容减去DL中的内容,结果在CH中源与目的操作数不能同时为存储器操作数2.SUB BL,DI在BL中减去(DI)单元的内容寄存器、存储器或立即数寄存器或存储器; 不能是立即数3.SUB BP+4,cl在SS段的(BP+4)单元中减去CL的内容4.SUB WORD PTR BX+DI+50,300在(BX+DI+50)字单元中减去立即数3005.SUB BX,305

15、0H在BX中减去立即数3050H6.SUB AL,56在AL中减去立即数56带借位的减法指令SBB在SUB的基础上再减去CF的值。适合于多字节或多字的减法与SUB相同与SUB相同与SUB相同与SUB相同与SUB相同减量(减1)指令DEC将目的操作数的内容(8位或16位)减1,源操作数1隐含在操作码中。目的操作数为寄存器或存储器,但不能是段寄存器或立即数与INC相同1.DEC CLCL中的内容减1源操作数为1为寄存器或存储器; 不能是段寄存器或立即数2.DEC AXAX中的内容减13.DEC BYTE PTR BX(BX)存储单元内容减14.DEC WORD PTR BX+DI+20(BX+DI

16、+20)存储器字单元内容减1求补指令NEG用0去减目的操作数的内容(8位或16位),其实质即为求取目的操作数内容的(2的)补码CF、PF、AF、ZF、SF及OF。 与SUB相同1.NEG ALAL中的内容求补码源操作数为0为寄存器或存储器; 不能是段寄存器或立即数2.NEG BXBX中的内容求补码3.NEG BYTE PTR BX(BX)存储单元内容求补码4.NEG WORD PTR BX+SI+5(BX+SI+5)存储器字单元内容求补码比较指令CMP将目的操作数的内容减去源操作数的内容,但其结果(两者之差)不回送于目的操作数CF、PF、AF、ZF、SF及OF。 ZF=1,两数相等;ZF=0,

17、两数不等 CF=1,有借位;CF=0,无借位(无符号) SFOF=1,被减数大于减数; SFOF=0,被减数小于减数 1.CMP SI,BPSI与BP内容比较源与目的操作数不能同时为存储器操作数2.CMP CH,3000CH与(3000)存储单元内容比较寄存器、存储器或立即数寄存器或存储器; 不能是立即数3.CMP WORD PTR BX+DI+100,DX(BX+DI+100)字单元与DX内容比较4.CMP BYTE PTR BX+SI,40H(BX+SI)字节单元与立即数40H比较5.CMP DI,0550HDI内容与立即数0550H比较6.CMP AL,80累加器AL内容与立即数80比较

18、乘法类指令无符号数乘法指令MUL不影响PF、AF、ZF、SF 只影响CF、OF1.MUL DLAL与DL内容相乘,乘积在AX中寄存器或存储器; 不能是立即数(8位或16位)累加器AL(8位)或AX(16位)、DX2.MUL CXAX与CX内容相乘,乘积在DX和AX中3.MUL BYTE PTR SI+2AL与(SI+2)字节单元内容相乘,结果在AX中4.MUL WORD PTR DIAX与(DI)字单元内容相乘,结果在DX和AX中带符号数乘法指令IMUL又称整型数乘法,即被乘数与乘数都是有符号的整数不影响PF、AF、ZF、SF 只影响CF、OF1.IMUL BLAL中的带符号数与BL中的带符号

19、数相乘,乘积在AX中寄存器或存储器; 不能是立即数(8位或16位)累加器AL(8位)或AX(16位)、DX2.IMUL DXAX中的带符号数与DX中的带符号数相乘,乘积在DX和AX中3.IMUL BYTE PTR BXAL中的带符号数与(BX)字节单元中的带符号数相乘,乘积在AX中4.IMUL WORD PTR BX+SI+5AX中的带符号数与(BX+SI+5)字单元中的带符号数相乘,乘积在DX和AX中除法类指令无符号数除法指令DIV不影响CF、PF、AF、ZF、SF及OF1.DIV BLAX内容除以BL内容,商在AL,余数在AH寄存器或存储器; 不能是立即数(8位或16位)累加器AX(16位

20、)或DX、AX(前者高16位,后者低16位,共32位,DX看做AX的扩展)2.DIV BXDX与AX内容除以BX内容,商在AX,余数在DX3.DIV BYTE PTR 3040AX内容除以(3040)字节单元内容,商在AL,余数在AH4.DIV WORD PTR DIDX与AX内容除以(DI)字单元内容,商在AX,余数在DX有符号数除法指令IDIV不影响CF、PF、AF、ZF、SF及OF1.IDIV CLAX与CL符号数相除,商在AL,余数在AH寄存器或存储器; 不能是立即数(8位或16位)累加器AX(16位)或DX、AX(前者高16位,后者低16位,共32位,DX看做AX的扩展)2.IDIV

21、 BXDX、AX与BX符号数相除,商在AX,余数在DX3.IDIV BYTE PTR SIAX与(SI)字节单元符号数相除,商在AL,余数在AH4.IDIV WORD PTR 5500HDX、AX与(5500H)字单元符号数相除,商在AX,余数在DX符号扩展类指令字节扩展成字指令CBW为单字节指令。执行CBW时,将AL中的最高位(符号位)扩展到AH中,亦即AH中每一位的值与AL中的符号位相同。当AL=80H,为负数,执行CBW后,AH=FFH=-1(补码)无字扩展成双字指令CWD执行CWD,将AX中的最高位(符号位)扩展到DX中,亦即DX中每一位的值与AX中的符号位相同。当AX=8000H,为

22、负数,执行CWD后,DX=FFFFH=-1(补码)无十进制调整类指令加法的十进制调整加法的ASCII调整指令AAA针对两个非组合BCD码相加在AL中的结果,将其调整为BCD码。被调整的操作数隐含在AL中,调整后的正确结果在AH和AL即AX中只影响AF、CF,对PF、SF、ZF及OF无影响加法的十进制调整指令DAA针对两个组合BCD码相加在AL中的结果,将其调整为BCD码。被调整的操作数隐含在AL中,调整后的正确结果仍在AL中影响AF、CF、PF、SF和ZF,对OF无影响减法的十进制调整减法的ASCII调整指令AAS两个非组合BCD码相减在AL中的结果,若低4位大于9或AF=1(此处表示向高4位

23、借位),就从AL中减去6,从AH中减去1,CF=1(此处表示AL从AH借位);AL减6后再和OFH相“与”,调整的结果在AL中,其高4位为0,低4位为0-9之间的一个数,即为正确的非组合BCD码只影响AF、CF,对PF、SF、ZF及OF无影响减法的十进制调整指令DAS两个组合BCD码相减在AL中的结果,若低4位大于9或AF=1,则低4位减6(06H),AF=1;若高4位大于9亦即(AL&F0H)90H或CF=1,则高4位减6,亦即AL-60H,CF=1影响AF、CF、PF、SF和ZF,对OF无影响乘法的十进制调整乘法的ASCII调整指令AAM将被乘数和乘数均转换为非组合BCD码,其乘积也要求是

24、非组合BCD码放在AX中影响PF、SF及ZF,不影响AF、CF及OF除法的十进制调整除法的ASCII调整指令AAD将被除数和除数均转换为非组合BCD码,其商也要求是非组合BCD码放在AL中,余数也要求是非组合BCD码放在AH中。但在做除法之前,先对AX中的被除数的非组合BCD码进行ASCII调整,其指令为AAD影响PF、SF及ZF,不影响AF、CF及OF逻辑运算指令取反(逻辑非)指令NOT执行该指令时,对操作数取反使CF=0、OF=0; 影响PF、ZF及SF; 对AF不确定1.NOT BLBL内容取反,结果在BL中操作数只有一个,可以是寄存器或存储器操作数,但不能是立即数2.NOT AXAX内

25、容取反,结果在AX中3.NOT BYTE PTR 2000H(2000H)单元内容取反,结果在2000H中逻辑运算类指令4.NOT WORD PTR SI+2(SI+2)字单元内容取反,结果“与”(逻辑乘)指令AND将源操作数和目的操作数相“与”,结果存入目的操作数。相“与”时,两数对应位均为1,则该结果为1,其他情况下均为0与NOT相同1.AND CX,DIDI和CX内容相“与”,结果在CX中寄存器、存储器或立即数寄存器、存储器或单独列出的累加器(也可含在寄存器中), 但不能为立即数(因为不能存放结果)2.AND DH,2000(2000)字节单元和DH内容相“与”,存入(DI+4)字单元3

26、.AND WORD PTR DI+4,DXDX和(DI+4)字单元内容相“与”,存入(DI+4)字单元4.AND BYTE PTR BX+10,5050和(BX+10)字节单元内容相“与”,存入(BX+10)字节单元5.AND BL,01100110B66H和BL内容相“与”,存入AX6.AND AX,3344H3344H和AX内容相“与”,存入AX“或”(逻辑和)指令OR将源操作数和目的操作数相“或”,结果存入目的操作数。用1去相“或”时,该位结果为1,起到置位的作用;而用0去相“或”时,则保留原来位的结果与AND相同格式与AND相同与AND相同与AND相同“异或”指令XOR将源操作数与目的

27、操作数取“异或”,结果存入目的操作数。用1去“异或”时,使对应位取反;而用0去“异或”时,则保留原来位的结果(对应位相同,结果为0;对应位不同,结果为1)与AND相同格式与AND相同与AND相同与AND相同测试指令TEST将源操作数与目的操作数相“与”,但结果不送回到目的操作数。依据对ZF(最低位是否为0,是,为1,否则为0)、SF(最高位是否为1,是,为1,否则为0)的判断,来决定程序转移是否与AND相同与AND相同与AND相同与AND相同移位指令逻辑左移指令SHL对无符号数而言,左移1位相当于乘以2,左移若干位相当于乘以2的幂次。但当CF首次出现1(表示已到扩展位)之后,便不遵循此规则影响

28、CF、PF、ZF、SF及OF; 对AF不确定1.SHL AH,1AH内容左移1位寄存器或存储器, 其内容可以是8位或16位, 、 但不能为立即数2.SHL CX,1CX内容左移1位3.MOV CL,44.SHL DL,CLDL内容左移4位5.SHL AX,CLAX内容左移4位6.SHL BYTE PTR DI+2,1(DI+2)字节单元内容左移1位7.SHL WORD PTR BX+100,1(BX+100)字单元内容左移1位8.MOV CL,39.SHL BYTE PTR 1000(1000)字节单元内容左移3位10.SHL WORD PTR BX+SI+10(BX+SI+10)字单元内容左移3位算术左移指令SAL对带符号数而言,左移1位乘2,左移若干位乘2的幂次。但当符号位发生变化的情况下,也不遵循此规则影响CF、PF、ZF、SF及OF; 对AF不确定1.SAL AH,1AH内容左移1位寄存器或存储器, 其内容可以是8位或16位, 但不能为立即数2.SAL CX,1CX内容左移1位3.MOV CL,44.SAL DL,CLDL内容左移4位5.SAL AX,CLAX内容左移4位6.SAL BYTE PTR DI+2,1(DI+2)字节单元内容左移1位7.SAL WOR

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2