第3章微处理器及其系统-4-1.ppt
《第3章微处理器及其系统-4-1.ppt》由会员分享,可在线阅读,更多相关《第3章微处理器及其系统-4-1.ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、3.4.4 指令的分类指令的分类指令的分类指令的分类一一 数据传送指令数据传送指令二二 算术运算指令算术运算指令三三 逻辑运算和移位循环类指令逻辑运算和移位循环类指令四四 串操作指令串操作指令五五 程序控制指令程序控制指令六六 处理器控制指令处理器控制指令一一 数据传送指令数据传送指令1 1 通用数据传送通用数据传送通用数据传送通用数据传送2 2 目标地址传送目标地址传送目标地址传送目标地址传送3 3 标志位传送标志位传送标志位传送标志位传送4 I/O4 I/O数据传送数据传送数据传送数据传送数据传送类指令可完成寄存器与寄存器之间、寄存器数据传送类指令可完成寄存器与寄存器之间、寄存器数据传送类
2、指令可完成寄存器与寄存器之间、寄存器数据传送类指令可完成寄存器与寄存器之间、寄存器与存储器之间以及寄存器与与存储器之间以及寄存器与与存储器之间以及寄存器与与存储器之间以及寄存器与I/OI/O端口之间的字节或字端口之间的字节或字端口之间的字节或字端口之间的字节或字传送,它们所具有的共同特点是不影响标志寄存器的传送,它们所具有的共同特点是不影响标志寄存器的传送,它们所具有的共同特点是不影响标志寄存器的传送,它们所具有的共同特点是不影响标志寄存器的内容。这类指令又可分成内容。这类指令又可分成内容。这类指令又可分成内容。这类指令又可分成4 4种类型。种类型。种类型。种类型。特点:不影响标志寄存器特点:
3、不影响标志寄存器1.通用数据传送指令通用数据传送指令MOV 目标操作数,目标操作数,源操作数源操作数功能:功能:功能:功能:(源)(源)(源)(源)(目的)(目的)(目的)(目的)MOV ES,DX MOV ES,DX MOV AX,BX MOV AX,BX MOV DI,AX MOV DI,AX MOV CX,1000H MOV CX,1000H MOV DX,5040H MOV DX,5040H MOV WORD PTRBX+2000H MOV WORD PTRBX+2000H,12ABH12ABH 例如:例如:例如:例如:l1 1)源操作数可以是)源操作数可以是8/168/16位的立即数
4、、寄存器操作位的立即数、寄存器操作数、内存操作数。目标操作数不允许为立即数,数、内存操作数。目标操作数不允许为立即数,其余同源操作数。源、目不能同时为内存操作数。其余同源操作数。源、目不能同时为内存操作数。l2 2)源、目操作数类型必须匹配)源、目操作数类型必须匹配例如:例如:MOV BYTE PTR BX,12HMOV BYTE PTR BX,12Hl3)3)不能向段寄存器写立即数不能向段寄存器写立即数例如:例如:MOV AX,2000MOV AX,2000 MOV DS,AX MOV DS,AXl4)4)以以CSCS为目标的一切传送指令都是非法的为目标的一切传送指令都是非法的l5 5)不影
5、响标志位不影响标志位不影响标志位不影响标志位说明:说明:PUSH 源源(SP)-2 (SP)(SP)-2 (SP),(源源源源)(SP-2)(SP-2),(SP-1)(SP-1)功能:压栈功能:压栈功能:压栈功能:压栈PUSH AXPUSH WORD PTR SI+4POP 目的目的功能:出栈功能:出栈功能:出栈功能:出栈(SP+1)(SP+1),(SP)(SP)(目的目的目的目的),(SP+2)(SP)(SP+2)(SP)POP AXPOP WORD PTR SI+5例如:例如:例如:例如:1)指令的操作数必须是)指令的操作数必须是16位位的。的。2)操作数可以是寄存器或存储器两单元,但)操
6、作数可以是寄存器或存储器两单元,但不能不能是立即数。是立即数。3)不能从栈顶弹出一个字给)不能从栈顶弹出一个字给CS4)PUSH和和POP指令在程序中一般成对出现指令在程序中一般成对出现5)PUSH指令的操作方向是从高地址向低地址,而指令的操作方向是从高地址向低地址,而POP指令的操作正好相反指令的操作正好相反堆栈操作说明:堆栈操作说明:XCHG 目的,源目的,源功能:该指令将源和目的的值互换功能:该指令将源和目的的值互换。1 1 1 1)两个操作数必须有一个在寄存器中。两个操作数必须有一个在寄存器中。两个操作数必须有一个在寄存器中。两个操作数必须有一个在寄存器中。2 2 2 2)可以在寄存器
7、之间或寄存器和存储器之间交换)可以在寄存器之间或寄存器和存储器之间交换)可以在寄存器之间或寄存器和存储器之间交换)可以在寄存器之间或寄存器和存储器之间交换数据。不允许在两个存储单元之间进行交换。数据。不允许在两个存储单元之间进行交换。数据。不允许在两个存储单元之间进行交换。数据。不允许在两个存储单元之间进行交换。3 3 3 3)不允许使用段寄存器不允许使用段寄存器不允许使用段寄存器不允许使用段寄存器4 4 4 4)两操作数等长,可以是字或字节。两操作数等长,可以是字或字节。两操作数等长,可以是字或字节。两操作数等长,可以是字或字节。说明:说明:例:例:1 XCHG AL,BL ;AL1 XCH
8、G AL,BL ;AL1 XCHG AL,BL ;AL1 XCHG AL,BL ;AL和和和和BLBLBLBL之间进行字节换之间进行字节换之间进行字节换之间进行字节换 2 XCHG BX,CX 2 XCHG BX,CX 2 XCHG BX,CX 2 XCHG BX,CX;BX;BX;BX;BX和和和和CXCXCXCX之间进行字交换之间进行字交换之间进行字交换之间进行字交换 3 XCHG 2530H,CX 3 XCHG 2530H,CX 3 XCHG 2530H,CX 3 XCHG 2530H,CX 设(设(设(设(DSDSDSDS)2000H2000H2000H2000H,(,(,(,(225
9、30H22530H22530H22530H)88H88H88H88H,(22531H22531H22531H22531H)66H66H66H66H,执行指令后执行指令后执行指令后执行指令后(CX)=(CX)=(CX)=(CX)=6688H XLAT 把一种编码表示转换为另一种编码表示。把一种编码表示转换为另一种编码表示。把一种编码表示转换为另一种编码表示。把一种编码表示转换为另一种编码表示。它可以使累加器中的一个值变换为内存表格中它可以使累加器中的一个值变换为内存表格中它可以使累加器中的一个值变换为内存表格中它可以使累加器中的一个值变换为内存表格中的某一个值,一般用来实现编码制的转换。的某一个
10、值,一般用来实现编码制的转换。的某一个值,一般用来实现编码制的转换。的某一个值,一般用来实现编码制的转换。XLATXLAT指令在使用前需将指令在使用前需将指令在使用前需将指令在使用前需将编码表的首地址编码表的首地址编码表的首地址编码表的首地址装入装入装入装入BXBX,将表的一个索引值装入将表的一个索引值装入将表的一个索引值装入将表的一个索引值装入ALAL,索引值索引值索引值索引值为为为为0-0-255255。指令执行时,会将。指令执行时,会将。指令执行时,会将。指令执行时,会将BXBX和和和和ALAL中的值相加,中的值相加,中的值相加,中的值相加,把得到的值作为地址,然后将此地址所对应的把得到
11、的值作为地址,然后将此地址所对应的把得到的值作为地址,然后将此地址所对应的把得到的值作为地址,然后将此地址所对应的单元中的值取到单元中的值取到单元中的值取到单元中的值取到ALAL中去。中去。中去。中去。设(设(设(设(DSDS)=A000H =A000H 表的起始地址为表的起始地址为表的起始地址为表的起始地址为A0010HA0010H表中放数字表中放数字表中放数字表中放数字0-90-9的的的的ASCIIASCII码码码码 A000:0010 30H31HA000:0016 36H例例 MOVMOV BX BX,0010H0010H MOV MOV AL AL,06H06H XLAT XLATA
12、L36H2目标地址传送指令目标地址传送指令 这是一类这是一类这是一类这是一类专用于传送地址码专用于传送地址码专用于传送地址码专用于传送地址码的指令,可用来传送的指令,可用来传送的指令,可用来传送的指令,可用来传送操作数的操作数的操作数的操作数的段地址段地址段地址段地址或或或或偏移地址偏移地址偏移地址偏移地址,共包含以下三条指,共包含以下三条指,共包含以下三条指,共包含以下三条指令:令:令:令:1 1 1 1)、)、)、)、取有效地址指令取有效地址指令取有效地址指令取有效地址指令 2 2 2 2)、)、)、)、将地址指针装到将地址指针装到将地址指针装到将地址指针装到DSDSDSDS和另一个寄存器
13、的指令和另一个寄存器的指令和另一个寄存器的指令和另一个寄存器的指令 3 3 3 3)、)、)、)、将地址指针装到将地址指针装到将地址指针装到将地址指针装到ESESESES和另一个寄存器的指令和另一个寄存器的指令和另一个寄存器的指令和另一个寄存器的指令LEA 目的,源目的,源功能:把源操作数的功能:把源操作数的功能:把源操作数的功能:把源操作数的偏移地址偏移地址偏移地址偏移地址传送给目的操作数。传送给目的操作数。传送给目的操作数。传送给目的操作数。LEALEA指令中目的操作数必须是指令中目的操作数必须是指令中目的操作数必须是指令中目的操作数必须是1616位的通用存储器。位的通用存储器。位的通用存
14、储器。位的通用存储器。例:例:LEA SP,0428H ;使堆栈指针使堆栈指针SP为为0482H LEABX,BX+DI+6指令执行前若(指令执行前若(BX)=1000H,(,(DI)=0200H则指令执行后,(则指令执行后,(BX)=1206HLDS 目的,源目的,源功能:将源操作数指定的功能:将源操作数指定的功能:将源操作数指定的功能:将源操作数指定的存储器存储器存储器存储器中中中中4 4个连续字个连续字个连续字个连续字节节节节传送给传送给传送给传送给目的操作数目的操作数目的操作数目的操作数和和和和DSDS。传送时低。传送时低。传送时低。传送时低2 2字节装字节装字节装字节装入目的操作数,
15、高入目的操作数,高入目的操作数,高入目的操作数,高2 2字节装入字节装入字节装入字节装入DSDS。例如:例如:LDS DI,2130H例例LDS DILDS DILDS DILDS DI,1200H1200H1200H1200HMOV AXMOV AXMOV AXMOV AX,DIDIDIDI 12H34H00H60H1200H数数据据段段 1 DSDI数数据据段段233H22H61234H(DSDSDSDS)=6000H =6000H =6000H =6000H (DIDIDIDI)=1234H=1234H=1234H=1234H(AXAXAXAX)=2233H=2233H=2233H=22
16、33HLES 目的,源目的,源功能:与功能:与LDS相似,只是高字节装入相似,只是高字节装入ES。(1 1)LAHF)LAHF功能:将标志寄存器功能:将标志寄存器功能:将标志寄存器功能:将标志寄存器FRFR的低字节传送到的低字节传送到的低字节传送到的低字节传送到AHAH(2)SAHF(2)SAHF功能:将功能:将功能:将功能:将AHAH寄存器内容送到标志寄存器寄存器内容送到标志寄存器寄存器内容送到标志寄存器寄存器内容送到标志寄存器FRFR的低的低的低的低字节字节字节字节(3)PUSHF(3)PUSHF功能:先将功能:先将功能:先将功能:先将SPSP的值减的值减的值减的值减2 2,再将,再将,再
17、将,再将1616位的位的位的位的FRFR入栈入栈入栈入栈(4)POPF(4)POPF功能:将当前栈顶和次栈顶的数据弹出到功能:将当前栈顶和次栈顶的数据弹出到功能:将当前栈顶和次栈顶的数据弹出到功能:将当前栈顶和次栈顶的数据弹出到FRFR,再将再将再将再将SPSP的值加的值加的值加的值加2 2,以指向新的栈顶,以指向新的栈顶,以指向新的栈顶,以指向新的栈顶3.标志位传送指令标志位传送指令 1 1)以上指令的累加器可为以上指令的累加器可为以上指令的累加器可为以上指令的累加器可为ALAL或或或或AXAX 2 2)当端口地址在)当端口地址在)当端口地址在)当端口地址在0 0255255之间时可用立即寻
18、址方式,之间时可用立即寻址方式,之间时可用立即寻址方式,之间时可用立即寻址方式,否则需将端口地址先放入否则需将端口地址先放入否则需将端口地址先放入否则需将端口地址先放入DXDX中,然后使用间接寻中,然后使用间接寻中,然后使用间接寻中,然后使用间接寻址方式。址方式。址方式。址方式。(1)IN (1)IN 累加器,端口地址累加器,端口地址累加器,端口地址累加器,端口地址(2)OUT(2)OUT 端口地址,累加器端口地址,累加器端口地址,累加器端口地址,累加器例如例如例如例如:ININ AL AL,20H20H MOV DX MOV DX,0AB4H0AB4H;注意字母不能是开头注意字母不能是开头注
19、意字母不能是开头注意字母不能是开头 OUT DXOUT DX,ALAL4.I/O数据传送指令数据传送指令说明说明说明说明:二二 算术运算指令算术运算指令加法加法ADD减法减法SUBADCSBBINCDECAAANEGDAACMP除法除法DIVAASIDIVDASAAD乘法乘法MULCBWIMULCWDAAM运算数据类型和对标志位影响运算数据类型和对标志位影响(1 1 1 1)数据类型)数据类型)数据类型)数据类型 类型类型字节字节字字不带符号的二进制数不带符号的二进制数0255065535带符号的二进制数带符号的二进制数-128127-3276832767不带符号的压缩十进制数不带符号的压缩十
20、进制数09909999不带符号的非压缩十进制数不带符号的非压缩十进制数09099(2)运算对标志位影响)运算对标志位影响 对标志位的影响:所有算术运算指令都影响状态标对标志位的影响:所有算术运算指令都影响状态标对标志位的影响:所有算术运算指令都影响状态标对标志位的影响:所有算术运算指令都影响状态标志志志志CF CF、PFPF、AF AF、ZF ZF、SFSF和和和和OFOF 当当当当无符号数无符号数无符号数无符号数运算结果运算结果运算结果运算结果溢出溢出溢出溢出时,时,时,时,CF=1CF=1 当当当当有符号数有符号数有符号数有符号数运算产生运算产生运算产生运算产生溢出溢出溢出溢出时,时,时,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微处理器 及其 系统
限制150内