微机原理与接口技术课件微机第三章.ppt
《微机原理与接口技术课件微机第三章.ppt》由会员分享,可在线阅读,更多相关《微机原理与接口技术课件微机第三章.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理与接口技术1第三章第三章 8086 8086寻址方式和寻址方式和指令系统指令系统微机原理与接口技术2主要内容主要内容80868086指令系统指令系统80868086的寻址方式的寻址方式指令的机器码表示方法指令的机器码表示方法微机原理与接口技术33-18086的寻址方式的寻址方式寻址方式就是指令中用于说明操作寻址方式就是指令中用于说明操作寻址方式就是指令中用于说明操作寻址方式就是指令中用于说明操作数所在地址的方法数所在地址的方法数所在地址的方法数所在地址的方法MOVAX,1234HMOVAX,1234H;B83412;B83412MOVAX,1234HMOVAX,1234H;A13412
2、;A13412操作码操作码操作数操作数微机原理与接口技术4一、一、8086的寻址方式说明的寻址方式说明1 1有效地址有效地址有效地址有效地址EAEA(EffectiveAddressEffectiveAddress)当操作数在内存中时,指令的操作数给出所当操作数在内存中时,指令的操作数给出所当操作数在内存中时,指令的操作数给出所当操作数在内存中时,指令的操作数给出所访问的访问的访问的访问的内存单元的逻辑地址。在寻址方式中,内存单元的逻辑地址。在寻址方式中,内存单元的逻辑地址。在寻址方式中,内存单元的逻辑地址。在寻址方式中,逻辑地址的形成是由多个分量组合而成,该组逻辑地址的形成是由多个分量组合而
3、成,该组逻辑地址的形成是由多个分量组合而成,该组逻辑地址的形成是由多个分量组合而成,该组合地址又叫有效地址。合地址又叫有效地址。合地址又叫有效地址。合地址又叫有效地址。2 2、MOVMOV数据传送指令数据传送指令数据传送指令数据传送指令 其格式为:其格式为:其格式为:其格式为:MOVMOV目的操作数,源操作数目的操作数,源操作数目的操作数,源操作数目的操作数,源操作数 目的操作数和源操作数均可采用不同的寻址方式,目的操作数和源操作数均可采用不同的寻址方式,目的操作数和源操作数均可采用不同的寻址方式,目的操作数和源操作数均可采用不同的寻址方式,两个操作数的类型必需一致。两个操作数的类型必需一致。
4、两个操作数的类型必需一致。两个操作数的类型必需一致。微机原理与接口技术5二、寻址方式介绍二、寻址方式介绍1 1立即寻址(立即寻址(立即寻址(立即寻址(ImmediateaddressingImmediateaddressing)操作数就在指令中,紧跟在操作码后操作数就在指令中,紧跟在操作码后操作数就在指令中,紧跟在操作码后操作数就在指令中,紧跟在操作码后面,作为指令一部分存放在内存的代码段中,面,作为指令一部分存放在内存的代码段中,面,作为指令一部分存放在内存的代码段中,面,作为指令一部分存放在内存的代码段中,这种操作数称为立即数。这种操作数称为立即数。这种操作数称为立即数。这种操作数称为立即
5、数。例:例:例:例:MOVAX,34EAHMOVAX,34EAH;B8EA34B8EA34 MOVBL,20HMOVBL,20H;B320B320微机原理与接口技术62 2、寄存器寻址(、寄存器寻址(、寄存器寻址(、寄存器寻址(RegisteraddressingRegisteraddressing)操操操操作作作作数数数数在在在在寄寄寄寄存存存存器器器器中中中中,指指指指令令令令中中中中源源源源操操操操作作作作数数数数和和和和目的操作数都可用这种寻址方式。目的操作数都可用这种寻址方式。目的操作数都可用这种寻址方式。目的操作数都可用这种寻址方式。例:例:MOVAL,BL;88D8MOVAX,1
6、234H;B83412MOVAL,AH;88E0微机原理与接口技术73、直接寻址(、直接寻址(Directaddressing)当当指指令令中中的的源源操操作作数数或或目目的的操操作作数数,采采用用直直接接给给出出被被访访问问内内存存单单元元的的逻逻辑辑地地址址时,这种寻址方式称直接寻址。时,这种寻址方式称直接寻址。例例:MOVAX,3E4CH;A14C3EMOV1234H,AL;A23412微机原理与接口技术8两个概念两个概念u段超越:段超越:MOVAX,3E4CHMOVAX,ES:3E4CHu符号地址:符号地址:MOVAX,RESULT微机原理与接口技术9如何区分如何区分RESULT是立即
7、数还是符号地址?是立即数还是符号地址?如果如果RESULTEQU3E4CH;立即数立即数MOVAX,RESULT如果如果RESULTDW3E4CH;符号地址符号地址MOVAX,RESULT微机原理与接口技术104 4、寄存器间接寻址(、寄存器间接寻址(Registerindirectaddressing)内内存存单单元元的的逻逻辑辑偏偏移移地地址址通通过过寄存器间接给出寄存器间接给出例例:MOVSI,61A8HMOVDX,SI微机原理与接口技术115 5、寄存器相对寻址(、寄存器相对寻址(RegisterRelativeAddressing)这这种种寻寻址址方方式式中中提提出出位位移移量量的的
8、概概念念,即即在在寄寄存存器器间间接接寻寻址址给给出出的的偏偏移移地地址址上上,加加一一相相对对位位移移量量。位位移移量量是是一一带带符符号号的的16位位二二进进制制数数。当当使使用用BX或或BP寄寄存存器器时时,称称基基址址寻寻址址;使使用用SI或或DI寄寄存存器器时时,称称变变址寻址。址寻址。例例:MOVCX,36HBXMOV20BP,AL微机原理与接口技术12 6 6、基址加变址寻址(、基址加变址寻址(BasedIndexedaddressing)它的它的EA是由三部分组成的,基址寄存是由三部分组成的,基址寄存器器BX或或BP的内容加上变址寄存器的内容再的内容加上变址寄存器的内容再加位移
9、量。物理地址由基址寄存器按规则加位移量。物理地址由基址寄存器按规则选择段寄存器,也可以使用段超越。选择段寄存器,也可以使用段超越。例例:MOVAX,8AHBXSI该例中该例中EA8AHBXSI物理地址物理地址DS10H8AHBXSI微机原理与接口技术13的使用规定的使用规定立即数在立即数在中表示直接地址,如中表示直接地址,如1000H;有相加的意思,下面几种写法是等价有相加的意思,下面几种写法是等价的的6BXSI,BX+6SI,BX+SI+6;只有只有BX,BP,SI,DI可以出现在可以出现在内,它们内,它们可以单独出现,也可以组合,但可以单独出现,也可以组合,但BX和和BP不不允许出现在同一
10、个允许出现在同一个,SI和和DI也一样;也一样;若若中含中含BP,则隐含使用,则隐含使用SS来提供段基来提供段基址,其它均隐含用址,其它均隐含用DS。均可以段超越。均可以段超越。微机原理与接口技术14微机原理与接口技术157、其他、其他A、隐含寻址、隐含寻址在指令中没有明显的标出,而指定寄存器在指令中没有明显的标出,而指定寄存器参加操作,称之为参加操作,称之为“隐含寻址隐含寻址”。DAAMULBLPUSHAXPOPCX.微机原理与接口技术16微机原理与接口技术17作业订正作业订正作业订正作业订正1.若若CS=A000H,求当前代码段在存储器中的物理地求当前代码段在存储器中的物理地址范围是什么?
11、若数据段位于址范围是什么?若数据段位于52000H到到61FFFH的的64K范围内,问范围内,问DS=?2.若当前若当前SS=3500H,SP=0800H,说明堆栈段在存储说明堆栈段在存储器中的物理地址,若此时入栈器中的物理地址,若此时入栈10个字节,个字节,SP内容是内容是什么?若再出栈什么?若再出栈6个字节,个字节,SP为什么值?为什么值?3.某程序数据段中存放了两个字某程序数据段中存放了两个字1EE5H和和2A8CH,已已知(知(DS)=7850H,数据存放的偏移地址为数据存放的偏移地址为3121H及及285AH。试画图说明它们在存储器中的存放情况。试画图说明它们在存储器中的存放情况。若
12、要读取这两个字,需要对存储器进行几次操作?若要读取这两个字,需要对存储器进行几次操作?微机原理与接口技术18B、I/O(输入(输入/输出)端口寻址(输出)端口寻址(I/Oportaddressing)当当操操作作数数在在外外部部设设备备时时,使使用用I/O指指令令。此此时时有有两两种种不同的寻址方式访问不同的寻址方式访问I/O端口。端口。(1)直接端口寻址方式直接端口寻址方式(2)采用采用DX寄存器间接寻址方式寄存器间接寻址方式(3)输入指令中目的操作数可为输入指令中目的操作数可为AL或或AX;输出指令中源操作数可为;输出指令中源操作数可为AL或或AX。例例:INAL,25H;E525HMOV
13、DX,3E4HOUTDX,AL;EE微机原理与接口技术19三、三、80868086的指令格式及数据类型的指令格式及数据类型指令由操作码和操作数(地址码)组指令由操作码和操作数(地址码)组指令由操作码和操作数(地址码)组指令由操作码和操作数(地址码)组成。成。成。成。80868086的指令长度是可变的,一条指的指令长度是可变的,一条指的指令长度是可变的,一条指的指令长度是可变的,一条指令一般由令一般由令一般由令一般由1 16 6个字节组成。个字节组成。个字节组成。个字节组成。操作码操作码操作数操作数微机原理与接口技术201.1.指令中的操作数指令中的操作数 单操作数指令单操作数指令指令助记符指令
14、助记符指令的指令的16进制代码进制代码INCAX40HINCBX43H微机原理与接口技术21 双操作数指令双操作数指令指令助记符指令助记符指令的指令的16进制代码进制代码MOVAL,04B004HMOVAX,04B80400 三个操作数指令三个操作数指令三个操作数指令三个操作数指令 8086808680868086指指指指令令令令系系系系统统统统中中中中,大大大大多多多多数数数数指指指指令令令令中中中中只只只只有有有有1 1 1 12 2 2 2个个个个操操操操作作作作数数数数,但但但但也也也也有有有有少少少少数数数数指指指指令令令令中中中中有有有有3 3 3 3个个个个操操操操作作作作数数数
15、数,不不不不过有一操作数隐含在操作码中。过有一操作数隐含在操作码中。过有一操作数隐含在操作码中。过有一操作数隐含在操作码中。例:例:例:例:ADC AX,BX ADC AX,BX ADC AX,BX ADC AX,BX 该指令完成操作数该指令完成操作数该指令完成操作数该指令完成操作数AXAXAXAX、BXBXBXBX和和和和CFCFCFCF位相加。位相加。位相加。位相加。微机原理与接口技术222.2.指令中的数据类型指令中的数据类型 无符号数无符号数无符号数无符号数 带符号数带符号数带符号数带符号数 ASCIIASCII码码码码 BCDBCD数(压缩数(压缩数(压缩数(压缩BCDBCD和非压缩
16、和非压缩和非压缩和非压缩BCDBCD)微机原理与接口技术233-2 3-2 指令的机器码表示方法指令的机器码表示方法一、机器语言指令的编码目的和特点一、机器语言指令的编码目的和特点目的:用二进制编码表示各种操作和寻址方式。目的:用二进制编码表示各种操作和寻址方式。特点:没有指令与机器语言的对照表,只有每种特点:没有指令与机器语言的对照表,只有每种 基本指令类型的编码格式。基本指令类型的编码格式。微机原理与接口技术24二、机器语言指令代码的编制二、机器语言指令代码的编制1.1.寄存器之间或寄存器与存储器之间数据传寄存器之间或寄存器与存储器之间数据传 送指令的编码格式送指令的编码格式R/MREGM
17、OD100010DW15876543210操作码操作码0:数据从寄存器传出数据从寄存器传出1:数据传至寄存器数据传至寄存器微机原理与接口技术258086寄存器编码表寄存器编码表REGW=1(字)(字)W=0(字节)(字节)000011001010100111101110AXBXCXDXSPDIBPSIALBLCLDLAHBHCHDHREG段寄存器01110010CSDSESSSR/MREGMOD100010DW15876543210操作码操作码0:数据从寄存器传出数据从寄存器传出1:数据传至寄存器数据传至寄存器微机原理与接口技术26MODR/M0000010100111001011101110
18、0011011BX+SIBX+DIBP+SIBP+DISIDID16(直接地址)BXBX+SI+D8BX+DI+D8BP+SI+D8BP+DI+D8SI+D8DI+D8BP+D8BX+D8BX+SI+D16BX+DI+D16BP+SI+D16BP+DI+D16SI+D16DI+D16BP+D16BX+D16W=0W=1ALAXCLCXDLDXBLBXAHSPCHBPDHSIBHDIR/MREGMOD100010DW15876543210操作码操作码0:数据从寄存器传出数据从寄存器传出1:数据传至寄存器数据传至寄存器微机原理与接口技术272.2.立即数寻址指令的编码立即数寻址指令的编码3.3.包
19、含段寄存器的指令的编码包含段寄存器的指令的编码4.4.段超越前缀指令的编码段超越前缀指令的编码微机原理与接口技术283-3 80863-3 8086的指令集的指令集80868086指令系统按功能可分为指令系统按功能可分为指令系统按功能可分为指令系统按功能可分为6 6大类型:大类型:大类型:大类型:1 1、数据传输类数据传输类数据传输类数据传输类2 2、算术运算类算术运算类算术运算类算术运算类3 3、逻辑运算和移位类逻辑运算和移位类逻辑运算和移位类逻辑运算和移位类4 4、串操作类串操作类串操作类串操作类5 5、控制转移类控制转移类控制转移类控制转移类6 6、处理器控制类处理器控制类处理器控制类处
20、理器控制类微机原理与接口技术29一、数据传送指令一、数据传送指令数据传送指令又可以分成数据传送指令又可以分成4种:种:l l 通用数据传送通用数据传送通用数据传送通用数据传送l l累加器专用传送指令累加器专用传送指令累加器专用传送指令累加器专用传送指令l l 目的地址传送目的地址传送目的地址传送目的地址传送l l 标志寄存器转送标志寄存器转送标志寄存器转送标志寄存器转送微机原理与接口技术30指令的共同特点是:指令的共同特点是:1 1、除除除除POPPOP和和和和SAHFSAHF指指指指令令令令外外外外,这这这这类类类类指指指指令令令令的的的的操操操操作作作作结果不会影响结果不会影响结果不会影响
21、结果不会影响FRFR寄存器中的标志。寄存器中的标志。寄存器中的标志。寄存器中的标志。2 2、指指指指令令令令中中中中有有有有两两两两个个个个操操操操作作作作数数数数,目目目目的的的的操操操操作作作作数数数数和和和和源源源源操作数,其执行过程为:操作数,其执行过程为:操作数,其执行过程为:操作数,其执行过程为:目的操作数目的操作数目的操作数目的操作数源操作数,源操作数,源操作数,源操作数,当当当当指指指指令令令令中中中中仅仅仅仅列列列列出出出出一一一一个个个个操操操操作作作作数数数数时时时时,另另另另一一一一操操操操作数为隐含。作数为隐含。作数为隐含。作数为隐含。微机原理与接口技术311 1、通
22、用数据传送指令、通用数据传送指令(1 1)MOVMOV传送指令传送指令传送指令传送指令 指令格式为:指令格式为:指令格式为:指令格式为:MOVMOV目的目的目的目的,源,源,源,源 功能:目的功能:目的功能:目的功能:目的源源源源 存存储储器器通用寄存器通用寄存器AXAHBXALCXBHDXBLSICHDICLSPDHBPDL立即数立即数段寄存器段寄存器CS,DS,ES,SS微机原理与接口技术32(2)PUSH进栈指令进栈指令 指令格式为:指令格式为:指令格式为:指令格式为:PUSHPUSH源(不能是立即数)源(不能是立即数)源(不能是立即数)源(不能是立即数)其操作过程是:其操作过程是:其操
23、作过程是:其操作过程是:a a、SPSP2 2,指示堆栈中可以存放数据的位置,指示堆栈中可以存放数据的位置,指示堆栈中可以存放数据的位置,指示堆栈中可以存放数据的位置b b、存源操作数,完成进栈操作。存源操作数,完成进栈操作。存源操作数,完成进栈操作。存源操作数,完成进栈操作。(3)POP出栈指令出栈指令指令格式为:指令格式为:指令格式为:指令格式为:POPPOP目的(不能是目的(不能是目的(不能是目的(不能是CSCS)其操作过程是:其操作过程是:其操作过程是:其操作过程是:a a、将将将将SS:SPSS:SP所所所所指指指指示示示示的的的的栈栈栈栈顶顶顶顶处处处处的的的的两两两两个个个个字字
24、字字节节节节的的的的数数数数据据据据,弹到目的操作数中;弹到目的操作数中;弹到目的操作数中;弹到目的操作数中;b b、SPSP2 2,指示当前栈顶位置,完成出栈操作,指示当前栈顶位置,完成出栈操作,指示当前栈顶位置,完成出栈操作,指示当前栈顶位置,完成出栈操作。微机原理与接口技术334 4)XCHGXCHG交换指令交换指令交换指令交换指令 指令格式为:指令格式为:指令格式为:指令格式为:XCHGXCHG目的操作数目的操作数目的操作数目的操作数,源操作数,源操作数,源操作数,源操作数操作数不能为立即数;操作数不能为立即数;操作数不能为立即数;操作数不能为立即数;源和目的不能同时为存储单元;源和目
25、的不能同时为存储单元;源和目的不能同时为存储单元;源和目的不能同时为存储单元;段寄存器不能作为操作数。段寄存器不能作为操作数。段寄存器不能作为操作数。段寄存器不能作为操作数。微机原理与接口技术342、累加器专用传送指令、累加器专用传送指令1 1)ININ输入指令输入指令输入指令输入指令指令格式为指令格式为指令格式为指令格式为:INAL,nINAL,nINAX,nINAX,nINAL,DXINAL,DXINAX,DXINAX,DX2 2)OUTOUT输出指令输出指令输出指令输出指令 指令格式为:指令格式为:指令格式为:指令格式为:OUTn,ALOUTn,ALOUTn,AXOUTn,AXOUTDX
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 课件 第三
限制150内