- 1、本文档共126页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《微型计算机系统原理及应用》课件第 1 章 概述
* 3. 寄存器寻址 操作数在CPU的某个寄存器中,指令中指出该寄存器名。 MOV DS,AX;AX ? DS INC CX;CX+1 ? CX 4. 寄存器间接寻址 操作数在存储器中,EA由寄存器指出。 MOV AX,[SI];[DS: SI] ? AX MOV AX,[BP];[SS: BP] ? AX (1) EA = [BX] [SI] [DI] 若没有前缀指明具体的段寄存器,则操作数在数据段中 (2) EA = [BP] 若没有前缀指明具体的段寄存器,则操作数在堆栈段。 5. 寄存器相对寻址 MOV AX,[BX+2000H] XX XX 码段 AH AL 36000H 36001H 00H 20H ? ?? ? 数据段 DS = 3000H BX = 4000H (1) 若EA = [BX] [SI] [DI] + 8位或16位偏移量 则操作数地址 DS: EA (2) 若EA = [BP] + 8位或16位偏移量 则操作数地址:SS: EA 6. 基址加变址寻址 8086CPU中,BX,BP - 基址寄存器 SI,DI - 变址寄存器 (1) 若EA = [BX] + [SI] [DI] 则操作数地址:DS: EA 例 MOV AX,[BX+SI] 若 DS = 1000H, BX = 5000H, SI = 2000H 则 EA = 5000H + 2000H = 7000H 操作数地址 10000H + 7000H = 17000H [17000H] ? AL [17001H] ? AH (2) 若EA = [BP] + [SI] [DI] 则操作地址:SS: EA 7. 相对的基址加变址寻址 则操作数地址:DS: EA 例 MOV AX,[BX+SI+0250H] 若 DS = 3000H, BX = 2000H, SI = 1000H 则操作数 PA=30000H+2000H+1000H+250H=33250H (1) 若EA = [BX] + [SI] [DI] + 8位或16位偏移量 (2) 若EA = [BP] + [SI] [DI] 则PA = SS ? 16 + EA + 偏移量 8086操作数寻址方式小结: 数据 EA 数据 寄存器 数据 寄存器 EA 数据 寄存器 位移量 地址 数据 指令 指令 内存 指令 寄存器 寄存器 指令 内存 指令 内存 + (a) (b) (c) (d) (e) 基址寄存器 变址寄存器 变址值 基址值 数据 内存 + 基址寄存器 变址寄存器 位移量 变址值 数据 内存 + 基址值 EA 指令 指令 (f) (g) 8086寻址方式 1.3 计算机的硬件和软件 上述的计算机的基本结构构成了计算机的硬件。但是要计算机正确地运行以解决各种问题,必须给它编制各种程序。为了运行、管理和维修计算机所编制的各种程序的总和就称为软件。软件的种类很多,各种软件发展的目的都是为了扩大计算机的功能和方便用户,使用户编制解决用户的各种问题的源程序更为方便、简单和可靠。 1.3.1 系统软件 在计算机发展的初期,人们是用机器指令码(二进制编码)来编写程序的,这就称为机器语言。 用助记符代替操作码,用符号来代替地址,这就是汇编语言阶段。 但用汇编语言写的源程序在机器中还必须经过翻译,变成用机器码表示的程序(称为目标程序——Object Program),机器才能识别和执行。 能执行这样的功能的程序就称为汇编程序(Assembler)。 为更便于用户编写程序,开发了各种高级语言。高级语言易于理解、学习和掌握;用户用高级语言编写程序也就方便多了,大大减少了工作量。但是在计算机执行时,仍必须把用高级语言编写的源程序翻译成用机器指令表示的目标程序才能执行,这样就需要有各种解释程序(Interpreter)。 随着计算机本身的发展(更快速,容量更大),以及计算机应用的普及和推广,计算机的操作也就由手工操作方式(用户直接通过控制台操作运行机器),过渡到多道程序成批地在计算机中自动运行方式,于是就出现了控制计算机中的所有资源(CPU、存储器、输入输出设备以及计算机中的各种软件),使多道程序能成批地自动运行,并且充分发挥各种资源的最大效能的操作系统(Operating System)。 这些为了使用和管理计算机由机器的设计者提供的软件,统称为系统软件。系统软件包括: (1) 各种语言和它们的汇编或解释、编译程序; (2) 机器的监控管理程序(Monitor)、调试程序(Debug)、故障检查和诊断程序; (3) 程序库。为
文档评论(0)