微机原理课件第3单元

微机原理课件第3单元

ID:5590769

大小:104.50 KB

页数:19页

时间:2017-11-16

微机原理课件第3单元_第1页
微机原理课件第3单元_第2页
微机原理课件第3单元_第3页
微机原理课件第3单元_第4页
微机原理课件第3单元_第5页
资源描述:

《微机原理课件第3单元》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、5.18086指令的寻址方式指令:微处理器提供的某一种基本操作功能。(*)进行什么操作(操作码)(*)对什么进行操作(操作数或操作数的来源)操作后的结果数据可以存放到某个原来的操作数位置指令系统:计算机提供所有的指令的集合。(*)指令系统随CPU的不同而不同机器语言:采用二进制的机器码表示指令、数据和指令数据的地址等信息的。101110000000010100000000汇编语言:采用助记符表示的程序设计语言。汇编语言源程序是机器语言程序的符号表示。(编译器处理)MOVAX,O3H汇编语言指令的格式:标号:指令助记符操作数;注释例如:LINE1:INCCX;计数器加一A

2、DDAX,BXDAA(*)标号的命名规则(*)指令助记符不可缺省(*)操作数在不同的情况下可以有2个,1个或者是没有(*)注释必须以分号开头,注释不生成目标代码(*)四个部分可以用制表符隔开。寻址方式:指令中给出操作数的方式操作数的寻址,例如MOVAX,[1234H]指令的寻址,例如JUMPLAB操作数的来源:①指令代码中直接给出。MOVAX,1200H②存放在寄存器中。MOVAX,BX③存放在指定的存储单元中。MOVAX,[3456H]1、立即寻址:操作数直接包含在指令中,在操作码之后。,(*)不必执行总线周期访问存储器,故称之为立即数。(*)立即数可以是一个8位或1

3、6位数。例如:MOVAL,80H MOVAX,1090H(*)立即数寻址方式只能用于源操作数,不能用于目的操作数。错误:MOV1200,AX(*)一条指令中源操作数和目的操作数可能有不同的寻址方式2、寄存器寻址:操作数包含在CPU内的某个寄存器中,指令中直接给出该寄存器名,16位:AX,BX,CX,DX,SI,DI,SP,BP8位:AL,BL,CL,DL,AH,BH,CH,DH例如:INCCXMOVAX,BX以下介绍的几个寻址方式将针对存储器操作数而言的。若操作数在存储器中,一般位于数据段、堆栈段或附加段中,这时指令中给出的是操作数所在单元的地址(EA)或产生EA的计算

4、方式。显然执行这类指令时:①CPU首先要计算出有效地址EA(EA是一个不带符号的16位数)②再由总线接口部件BIU计算出物理地址③再执行总线周期按该物理地址访问存储器并取出操作数送给EU,由EU具体执行该指令。3、直接寻址:操作数在存储器中的16位有效地址由指令直接给出。例如:MOVAX,[1070H] MOVAL,[1070H](*)要用方括号括起地址以免与立即数寻址混淆(*)默认是从数据段取数,如果不是数据段则要在前面加段跨越前缀例如:MOVBX,[2000H]MOVBX,ES:[2000H]4、间接寻址(4A)寄存器间接寻址:操作数的有效地址在指令中指定的某个寄存

5、器中。例如:MOVAX,[BX](*)可用的寄存器只有四个BX,BP,SI,DI错误:MOVAX,[DX](*)如果间址寄存器为BP则默认为是堆栈段,如果间址寄存器为BX,SI,DI则默认为是数据段。(*)在一条指令中,不能同时有两个存储器操作数(避免指令过长)。错误:MOV[BX],[1200H](4B)寄存器相对间接寻址:有效地址EA等于指令所指示的寄存器中的内容再加上指令中给定的8/16位的位移量。例如:MOVAX,[SI+100]MOVAX,[SI]+100MOVAX,100[SI](*)寄存器相对寻址有以上三种写法(*)寄存器相对寻址可以用来寻址一维表中的数据

6、(4C)基址变址寻址:基址变址寻址是操作数的有效地址EA由指令指定的一个基址寄存器(BX或BP)和一个变址寄存器(SI或D1)内容之和。例如:MOVAX,[BX][DI]MOVAX,[BX+DI](*)基址变址寻址可以用来寻址二维表中的数据(*)要注意只能是基址和变址的组合而不能用两个基址或两个变址的组合错误:MOVAX,[SI][DI]MOVAX.[BX][BP](4D)相对基址变址寻址:例如:MOVAX,100[BX][SI]MOVAX,[BX+SI+100H]MOVAX,100[BX+SI](*)所有的存储器操作数寻址方式都支持段跨越前缀。(*)使用BP寄存器做间

7、接寻址时注意默认的段。测试题一:写出下列指令中源操作数的寻址方式:(1)MOVSI,1000(2)MOVBH,AL.(3)MOVAX,[SI][BX](4)MOVBP,[BX](5)MOVDI,[2130H](6)MOVDL,[BX十SI十20H](7)MOVDI,[BX十100]测试题二:指出下列指令的错误之处(1)MOV1000H,AX(2)MOVAX,[DX](3)MOVAX,[SI][DI](4)MOV[BX],[SI](5)MOVBP,AL测试题三:设有关寄存器及有关存储单元的内容如下:(DS)=2000H,(BX)=0100H

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

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

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