第五单元指令系统补充.pptVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五单元指令系统补充

8个通用的16位寄存器 (1)数据寄存器: AX BX CX DX (2)变址寄存器: SI DI (3)指针寄存器: BP SP 4个数据寄存器还可以分成高8位和低8位两个独立的寄存器,这样又形成8个通用的8位寄存器 AX: AH AL BX: BH BL CX: CH CL DX: DH DL AX称为累加器(Accumulator) 使用频度最高。用于算术、逻辑运算以及与外设传送信息等 BX称为基址寄存器(Base address Register) 常用做存放存储器地址 CX称为计数器(Counter) 作为循环和串操作等指令中的隐含计数器 DX称为数据寄存器(Data register) 常用来存放双字长数据的高16位,或存放外设端口地址 AX称为累加器(Accumulator) 使用频度最高。用于算术、逻辑运算以及与外设传送信息等 BX称为基址寄存器(Base address Register) 常用做存放存储器地址 CX称为计数器(Counter) 作为循环和串操作等指令中的隐含计数器 DX称为数据寄存器(Data register) 常用来存放双字长数据的高16位,或存放外设端口地址 16位变址寄存器SI和DI 常用于存储器变址寻址方式时提供地址 SI是源地址寄存器(Source Index) DI是目的地址寄存器(Destination Index) 在串操作类指令中,SI、DI还有较特殊的用法 指针寄存器用于寻址内存堆栈内的数据 SP为堆栈指针寄存器(Stack Pointer),指示堆栈段栈顶的位置(偏移地址) BP为基址指针寄存器(Base Pointer),表示数据在堆栈段中的基地址 SP和BP寄存器与SS段寄存器联合使用以确定堆栈段中的存储单元地址 IP(Instruction Pointer)为指令指针寄存器,指示主存储器指令的位置 随着指令的执行,IP将自动修改以指示下一条指令所在的存储器位置 IP寄存器是一个专用寄存器 IP寄存器与CS段寄存器联合使用以确定下一条指令的存储单元地址 存储器是计算机存储信息的地方。掌握数据存储格式,以及存储器的分段管理对以后的汇编程序设计非常重要 你能区别寄存器、存储器(主存)、外存(包括硬盘、光盘、磁带等存储介质)吗? 寄存器、存储器和外存的区别 寄存器是微处理器(CPU)内部暂存数据的存储单元,以名称表示,例如:AX,BX..….等 存储器也就是平时所说的主存,也叫内存,可直接与CPU进行数据交换。主存利用地址区别 外存主要指用来长久保存数据的外部存储介质,常见的有硬盘、光盘、磁带、U盘等。外存的数据只能通过主存间接地与CPU交换数据 程序及其数据可以长久存放在外存,在运行需要时才进入主存 存储单元及其存储内容 每个存储单元都有一个编号;被称为存储器地址 每个存储单元存放一个字节的内容 多字节数据存放方式 多字节数据在存储器中占连续的多个存储单元: 存放时,低字节存入低地址,高字节存入高地址; 表达时,用它的低地址表示多字节数据占据的地址空间。 物理地址和逻辑地址 CPU存储系统中,对应每个物理存储单元都有一个唯一的20位编号,就是物理地址,从00000H ~ FFFFFH 分段后在用户编程时,采用逻辑地址,形式为 段基地址 : 段内偏移地址 逻辑地址 段地址说明逻辑段在主存中的起始位置 规定段地址必须是模16地址:xxxx0H 省略低4位0000B,段地址就可以用16位数据表示,就能用16位段寄存器表达段地址 偏移地址说明主存单元距离段起始位置的偏移量 每段不超过64KB,偏移地址也可用16位数据表示 物理地址和逻辑地址的转换 将逻辑地址中的段地址左移4位,加上偏移地址就得到20位物理地址 一个物理地址可以有多个逻辑地址 段寄存器 4个16位段寄存器 CS(代码段)指明代码段的起始地址 SS(堆栈段)指明堆栈段的起始地址 DS(数据段)指明数据段的起始地址 ES(附加段)指明附加段的起始地址 每个段寄存器用来确定一个逻辑段的起始地址,每种逻辑段均有各自的用途 第代码段寄存器CS(Code Segment) 代码段用来存放程序的指令序列 代码段寄存器CS存放代码段的段地址 指令指针寄存器IP指示下条指令的偏移地址 处理器利用CS:IP取得下一条要执行的指令 堆栈段寄存器SS(Stack Segment) 堆栈段确定堆栈所在的主存区域 堆栈段寄存器SS存放堆栈段的段地址 堆栈指针寄存器SP指示堆栈栈顶的偏移地址 处理器利用SS:SP操作堆栈顶的数据 数据段寄存器DS(Data Segment) 数据段存放运行程序所用的数据 数据段寄存器DS存放数据段的段地址 各种主存寻址方式(有效地址EA)得到存储器中操作数的偏移地址 处理器利用D

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档