资源描述:
《x86的指令系统和寻址方式1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章80X86的指令系统和寻址方式主要内容:80X86的数据类型、寻址方式、指令格式、指令系统具体组成(数据传送指令、算术运算指令、逻辑运算指令、串操作数指令、控制转移指令、处理机指令和高级语言指令)和80486指令。要求掌握:8086基本指令系统,可以进行基本的应用。指令——控制计算机完成指定操作的命令机器指令——指令的二进制代码形式。例如:CD21H汇编指令——助记符形式的指令。例如:INT21H指令系统——CPU所有指令及其使用规则的集合寻址方式——找出存放操作数的有效地址的方式寻址操作——按寻址方式求出操作数有效
2、地址和存取操作数的过程3.1概述指令系统:指该计算机能够执行的全部指令的集合汇编语言指令要解决的两个问题:要指出进行什么操作——操作符;要指出操作数和操作结果放在何处——寻址方式。指令的基本构成:操作码[操作数],[操作数]说明要执行的是什么操作操作对象,可以有0个、1个或2个目的源指令举例:ADDAX,[SI+6]MOVAX,BX操作码操作数INC[BX]HLT操作数的种类操作数的种类分为两大类:数据操作数和转移地址操作数数据操作数—对象是数据,分为:1、立即数操作数2、寄存器操作数3、存储器操作数4、I/O操作数转移地
3、址操作数—对象是目标地址,分为:1、立即数操作数2、寄存器操作数3、存储器操作数数据类型无符号二进制数带符号二进制数浮点数BCD码串数据ASCII码数据指针类数据位串:一串连续的二进制数-字节串:一串连续的字节。-字串:一串连续的字。双字串:一串连续的双字。3.280X86的寻址方式数据寻址方式:是指获取指令所需的操作数或操作数地址的方式程序寻址方式:是指程序中出现转移和调用时的程序定位方式1、立即寻址方式操作数作为指令的一部分,在直接指令中给出。例:MOVAL,5 MOVAX,1234H MO
4、VEAX,12345678H2、寄存器寻址方式操作数在某个寄存器中,指令中指出寄存器号。例:MOVAL,BH MOVAX,CX MOVEAX,EBP3.2.180X86的数据寻址方式(共十种)以下各种寻址方式的操作数都放在存储器中,通过不同的寻址方式求得操作数的地址,从而取得操作数。操作数的地址有段地址及偏移地址确定。在80x86中,把操作数的偏移地址称为有效地址(EffectiveAddress,简称EA)。80X86任何内存单元的地址由段基址和偏移地址组成段基址由段寄存器提供而偏移地址由以
5、下四个基本部分组合而成。基址寄存器;变址(间址)寄存器;比例因子;位移量。它们的组合和计算方法为:有效地址EA=基址+变址×比例因子+位移量几点说明有效地址可有以下四种成分组成:(1)位移量:是存放在指令中的一个8位、16位或32位的数。(2)基址:其值存放在基址寄存器中。BX、BP、任何32位通用寄存器(3)变址:其值存放在变址寄存器中。SI、DI、除ESP外的32位通用寄存器(4)比例因子:是386及后继机型中新增寻址方式中的术语。其值可为1、2、4、83、直接寻址方式有效地址只包含偏移量一种成分。例:MOVAX
6、,[200H]4、寄存器间接寻址方式有效地址只包含在基址寄存器或变址寄存器中。例:MOVAX,[BX] MOVAX,[BP] MOVAX,[SI] MOVAX,[DI]5、寄存器相对寻址方式有效地址为基址寄存器或变址寄存器的内容与位移量之和。例:MOVAX,[BX+2] MOVAX,[BP+1] MOVAX,[SI-1] MOVAX,[DI-2] MOVAX,[BX+2000H] MOVAX,[BP+1000H]
7、 MOVAX,[SI-1000H] MOVAX,[DI-2000H]6、基址变址寻址方式有效地址为基址寄存器和变址寄存器的内容之和。例:MOVAX,[BX+SI] MOVAX,[BX+DI] MOVAX,[BP+SI] MOVAX,[BP+DI]7、相对基址变址寻址方式有效地址为基址寄存器、变址寄存器及指定位移量的值之和。例:MOVAX,[BX+SI+2] MOVAX,[BX+DI+1] MOVAX,[BP+SI-1]
8、 MOVAX,[BP+DI-2] MOVAX,[BX+SI+2000H] MOVAX,[BX+DI+1000H] MOVAX,[BP+SI-1000H] MOVAX,[BP+DI-2000H]8、比例变址寻址方式*有效地址为变址寄存器的内容乘以指令中指