X86寻址方式与指令系统

X86寻址方式与指令系统

ID:39339592

大小:703.60 KB

页数:43页

时间:2019-07-01

X86寻址方式与指令系统_第1页
X86寻址方式与指令系统_第2页
X86寻址方式与指令系统_第3页
X86寻址方式与指令系统_第4页
X86寻址方式与指令系统_第5页
资源描述:

《X86寻址方式与指令系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章80X86寻址方式与指令系统第2章:2.28088/8086的寻址方式从8088/8086的指令格式入手,论述:立即数寻址方式寄存器寻址方式存储器寻址方式进而熟悉8088/8086汇编语言指令格式,尤其是其中操作数的表达方法为展开8088/8086指令系统做好准备第4章:4.1计算机指令格式操作码说明计算机要执行哪种操作,如传送、运算、移位、跳转等操作,它是指令中不可缺少的组成部分,其长度取决于指令系统中的指令条数操作对象(操作数)是指令执行的参与者,即各种操作的对象有些指令不需要操作数,

2、通常的指令都有一个或两个操作数,也有个别指令有3个甚至4个操作数操作码操作对象指令由操作码和操作对象两部分组成4.1计算机指令格式零地址指令,一般有如下两种情况:无需任何操作数,如空指令所需操作数是隐含约定的一地址指令,一般有如下两种形态:只有目标操作数,功能:OP(D1)→D1隐含约定目的操作数,功能:按D1取出源操作数,从约定的累加器A中取出目的操作数进行OP运算,结果存入A。即(D1)OP(A)→AOP格式:NOP;空操作CLI;清除中断标志OP格式:D1例如:INCCX;(CX)+1→C

3、XOP格式:D1例如:MULBL;(AL)*(BL)→AL4.1计算机指令格式二地址指令格式功能(D1)OP(D2)→D1举例目的OPD1D1源ADDCX,2000H;(CX)+2000H→CXADDAX,BX;(AX)+(BX)→AX4.1计算机指令格式三地址指令格式功能(D1)OP(D2)→D3大、中型机上采用,微型机一般不用OPD1D2D3第4章:指令的助记符格式(补充)操作数2,常被称为源操作数src(一般在执行过程中保持不变),它表示参与指令操作的一个对象操作数1,成被称为目的操作数d

4、est(一般涌来存放结果),它不仅可以作为指令操作的一个对象,还可以用来存放指令操作的结果分号后的内容是对指令的解释操作码[操作数1],[操作数2];注释汇编语句格式第4章:指令的助记符格式(补充)每种指令的操作码:用一个助记符表示(指令功能的英文缩写)对应着机器指令的一个或多个二进制编码指令中的操作数:可以是一个具体的数值可以是存放数据的寄存器或指明数据在主存位置的存储器地址4.2指令长度与字长的关系指令的长度主要取决于指令操作码的长度、操作数地址的长度和操作数地址的个数通常把最常用的指令设计

5、成短格式指令,以便节省存储空间和提高指令的执行速度指令字长与主存的编址单位及CPU的机器字长有一定的关系在变字长的指令系统中,一般都将指令操作码放在第一字节中,相关信息段,最好按一定的顺序排列,便于CPU解释执行8086/8088CPU指令系统格式举例操作码寻址方式与寄存器号位移量/立即数位移量/立即数立即数立即数第1字节2字节3字节4字节5字节6字节4.380X86指令(编码)格式与寻址方式4.3.18086/8088/80286指令编码格式opcodemodregr/mdispData操作码

6、方式寄存器(Mod字节)位移量立即数第一个字节为操作码第二个字节为操作数的寻址方式,分三个域第三部分为操作数关于寻址方式字节的分析操作码字节中的D1、D0位分别用于表示指令中数据传送的方向和操作数类型D=0,则reg域指定的寄存器用作源操作数D=1,则reg域指定的寄存器用作目的操作数,而源操作数可来自r/m域中的存储器或另一个寄存器W(宽度)用于表示操作数是8位还是16位。W=0,指令中两个操作数均为8位,W=1,则为16位。DWD7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0

7、Modregr/m操作码字节寻址方式字节关于寻址方式字节的分析Reg域:规定一个寄存器操作数,他在指令中作为源操作数还是目的操作数由D位规定Mod域:用来区分另一个操作数是在寄存器,还是在存储器中关于寻址方式字节的分析r/m域:受寻址方式mod域所控制。若mod=11为寄存器寻址,r/m域指出第二个操作数所在寄存器号;mod=00、01、10时均为存储器寻址方式,r/m域指出应如何求得操作数存放在寄存器中的有效地址举例例1:写出指令MOV[BX+DI-6],CL的机器语言编码1.可用符号写成MO

8、Vmem,reg的形式,故该指令编码形式为:100010DWmodregr/mdisp82.由于目的数是存储器寻址,D=0和reg域指定了源寄存器。CL的reg编码为001,操作数为8位,W=0,则有:10001000mod001r/mdisp83.r/m=001,是对[BX+DI+disp]的寻址计算。位移量disp=-6,为FAH。当mod=01时,为选取8位位移量,则有:100010000100100111111010=88H、49H、FAH例2:写出MOVAH,[BX+DI+50H]的机

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。