第3章 指令系统1.ppt
《第3章 指令系统1.ppt》由会员分享,可在线阅读,更多相关《第3章 指令系统1.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第3章指令系统1指令系统:指令系统:微机处理器所能执行的各种指令的集合,不同的微 处理器有不同的指令系统。对对80X86/Pentium80X86/Pentium:8086、8088指令系统为基本指令系统286、386、486、Pentium在此基础上进行了扩充:8086/8088基本指令的增强及一些专用指令构成X86/Pentium系列的实模式指令集,系统控制指令对保护模式的多任务、存贮器管理、保护机制提供了控制能力。本章重点本章重点:基本指令集基本指令集3、规则存放:数据的地址对齐规则存放:数据的地址对齐字节数据:顺序存放。字节数据:顺序存放。字数据:字数据:规则字规则字-低字节存放在地址
2、为偶数的单元,顺序存低字节存放在地址为偶数的单元,顺序存 放高字节。读写用放高字节。读写用1 1个总线周期。个总线周期。非规则字非规则字-低字节存放在地址为奇数的单元,低字节存放在地址为奇数的单元,顺序存放高字节。读写用顺序存放高字节。读写用2 2个总线周期个总线周期。80868086的两个的两个512 KB512 KB存储体:奇体、偶体存储体:奇体、偶体D15-D8D7-D0高位存储体(奇数地址)低位存储体(偶数地址)A19-A1A19-A1A19-A1D7-D0D7-D064KB8片64KB8片SEL512X8SEL512X8BHEA0 读16位数据时每个体被选中几次?X880888088
3、的的1M1M存储器为存储器为1 1体,进行体,进行字字数据读写数据读写时,需要访问时,需要访问2 2次存次存储器。储器。l微处理器的主要功能是由它的指令系统来体微处理器的主要功能是由它的指令系统来体现的。编写汇编程序时现的。编写汇编程序时,必须首先了解所,必须首先了解所用计算机的用计算机的CPU的指令系统,然后把我们的指令系统,然后把我们要解决的问题用一条条指令描述出来。要解决的问题用一条条指令描述出来。l各种各种CPU指令条数不一样,但功能相近,指令条数不一样,但功能相近,格式类似。格式类似。l80X86系列系列CPU有共同的有共同的基本指令基本指令。3.1 8086/8088的指令格式和寻
4、址方式的指令格式和寻址方式3.1.1 指令格式指令格式l机器指令机器指令机器指令机器指令:指令的二进制代码形式。如:指令的二进制代码形式。如:指令的二进制代码形式。如:指令的二进制代码形式。如:89D8H89D8Hl汇编指令汇编指令汇编指令汇编指令:助记符形式的指令。如:助记符形式的指令。如:助记符形式的指令。如:助记符形式的指令。如:MOV AXMOV AX,BXBX由指令的格式入手,掌握其中操作数的表达方法,由指令的格式入手,掌握其中操作数的表达方法,即寻址方式,为展开即寻址方式,为展开8086指令系统做好准备。指令系统做好准备。l指令由操作码和操作数两部分组成指令由操作码和操作数两部分组
5、成操作码操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少的组成部分操作,它是指令中不可缺少的组成部分操作数操作数是指令执行的参与者,即各种操作的对象是指令执行的参与者,即各种操作的对象操作码操作数操作码操作码:由CPU设计人员定义。每一种操作唯一对应一个操作码。例:加法加法操作助记符ADD;数据传送数据传送操作助记符MOV;比较比较操作助记符CMP;操作数操作数:可由编程人员采用不同方式给出。8086/80888086/8088指令格式:指令格式:1 16 6字节字节DATA(高)DATA(低)Disp/DA
6、TA(高)Disp/DATA(低)Mod r/mOP Code1、机器码的格式、机器码的格式 对对X86X86,由,由1 11616个字节构成。个字节构成。datadispS-i-bMod r/m操作码前缀14 1 2 1 1 0.1.2.4 0.1.2.4 1、指令中对操作码、操作数的编码方式、指令中对操作码、操作数的编码方式。机器码机器码 2、指令的助记符格式、指令的助记符格式l指令格式指令格式l指令中的操作数:指令中的操作数:操作数可以有操作数可以有0-30-3个;个;操作数可以是参加操作的数的本身,即一个具体的数值;操作数可以是参加操作的数的本身,即一个具体的数值;也可以是操作数所在的
7、位置的指示,即提供了操作数的地也可以是操作数所在的位置的指示,即提供了操作数的地址址 例:例:L1:MOV AL,CL2、指令的助记符格式指令的助记符格式标号:助记符标号:助记符 操作数操作数1,操作数操作数2 3、说明、说明:汇编语言指令可手工汇编成机器码汇编语言指令可手工汇编成机器码.即使是同一种指令,不同的寻址方式也会使机器指令占据即使是同一种指令,不同的寻址方式也会使机器指令占据不同的存贮空间。编程时应选择合理算法、数据结构、寻址方不同的存贮空间。编程时应选择合理算法、数据结构、寻址方式等节省式等节省MEMMEM。目的操作数目的操作数源操作数源操作数3.1.2 寻址方式寻址方式l寻址方
8、式寻址方式指令中给出操作数所在地址的方指令中给出操作数所在地址的方法。法。l指令中操作数可能存在的地方指令中操作数可能存在的地方:指令中指令中 寄存器寄存器 存储单元存储单元 I/O I/O端口端口对应的寻址方式:对应的寻址方式:立即寻址立即寻址 寄存器寻址寄存器寻址 存储器寻址:给出存储器寻址:给出EAEA的方式多样,的方式多样,5 5种。种。I/O I/O端口寻址端口寻址1、立即寻址、立即寻址l指令中的源操作数是立即数,即源操作数是参加指令中的源操作数是立即数,即源操作数是参加操作的数据本身。操作的数据本身。立即数可以是立即数可以是8 8位或位或1616位的整数位的整数例:例:MOV AX
9、MOV AX,1234H1234H12H34HAH AL 操作码操作码代代码码段段 2、寄存器寻址、寄存器寻址l参加操作的操作数存放在参加操作的操作数存放在CPU的内部寄存器的内部寄存器中。中。8/16位。位。l例:例:MOV AHMOV AH,BLBL MOV AX MOV AX,CXCX AX CX存储器寻址存储器寻址l操作数存放在存储器中操作数存放在存储器中l指令的操作数部分给出的是该操作数的段内偏移指令的操作数部分给出的是该操作数的段内偏移地址地址l而段地址在默认的或用段超越前缀指定的段寄存而段地址在默认的或用段超越前缀指定的段寄存器中器中l8086设计了多种存储器寻址方式设计了多种存
10、储器寻址方式1、直接寻址、直接寻址2、寄存器间接寻址、寄存器间接寻址3、基址加变址寻址、基址加变址寻址4、寄存器相对寻址、寄存器相对寻址5、相对基址加变址寻址、相对基址加变址寻址EA =基址值基址值 +变址值变址值 比例因子比例因子 +位移量位移量 (BX或或BP)(SI或或DI)v运算是在指令执行时根据所采用的寻址方式自动计算得出,运算是在指令执行时根据所采用的寻址方式自动计算得出,结果为一个结果为一个16位的无符号数。位的无符号数。设计多种寻址方式是为了处理各种数据结构的需要。设计多种寻址方式是为了处理各种数据结构的需要。存储器寻址的各种寻址方式的不同,实质上是构成段内偏移存储器寻址的各种
11、寻址方式的不同,实质上是构成段内偏移量量 EA的方法不同。的方法不同。v有效地址有效地址EA:段内偏移地址由几个基本部分组合而成,:段内偏移地址由几个基本部分组合而成,把这种方式提供的偏移地址称为有效地址把这种方式提供的偏移地址称为有效地址EA。vEA的基本部分包括的基本部分包括:基址寄存器、变址寄存器、位移量、:基址寄存器、变址寄存器、位移量、比例因子。比例因子。v最终的偏移地址是这几部分运算后的结果。最终的偏移地址是这几部分运算后的结果。v计算计算EA的通式:(的通式:(16位寻址,比例因子为位寻址,比例因子为1)3、直接寻址方式、直接寻址方式v指令中直接给出操作数的指令中直接给出操作数的
12、1616位偏移地址位偏移地址v直接寻址方式下,操作数直接寻址方式下,操作数默认默认为在数据段,段地址在为在数据段,段地址在DSDS中。中。v但允许段超越。可在指令中增加但允许段超越。可在指令中增加段超越前缀段超越前缀指出特定段寄指出特定段寄存器名。存器名。MOV AX ,2000H ;将;将DS段中段中2000H和和2001H单元的内容送到单元的内容送到AX ;指令代码:;指令代码:A10020MOV AX ,ES:2000H ;AX(ES:2000H 和和 ES:2001H);指令代码:;指令代码:26A10020以符号地址(变量名)的形式给出以符号地址(变量名)的形式给出 VALUE DB
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 指令系统1 指令系统
限制150内