网站大量收购闲置独家精品文档,联系QQ:2885784924

《汇编语言》讲稿-02.pptVIP

  1. 1、本文档共56页,可阅读全部内容。
  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文档。上传文档
查看更多
《汇编语言》讲稿-02

《汇编语言》课件             王爽 著-清华大学出版社 第2章 寄存器(CPU工作原理) 2.1 通用寄存器 2.2 字在寄存器中的存储 2.3 几条汇编指令 2.4 物理地址 2.5 16位结构的CPU 2.6 8086CPU给出物理地址的方法 2.7 “段地址×16+偏移地址 =物理地址”的本质含义 2.8 段的概念 2.9 段寄存器 2.10 CS和IP 2.12 代码段 CPU概述 一个典型的CPU由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。 内部总线实现CPU内部各个器件之间的联系。 外部总线实现CPU和主板上其它器件的联系。 寄存器概述 8086CPU有14个寄存器 它们的名称为: AX、BX、CX、DX、SI、DI、SP、BP、 IP、CS、SS、DS、ES、PSW。 8086的寄存器组 2.1 通用寄存器 8086CPU所有的寄存器都是16位的,可以存放两个字节。 AX、BX、CX、DX 通常用来存放一般性数据,又被称为通用寄存器。 通用寄存器 每个通用寄存器又有它们各自的专用目的 AX--累加器,使用频度最高,用于算术、逻辑运算以及与外设传送信息等; BX--基址寄存器,常用做存放存储器地址; CX--计数器,作为循环和串操作等指令中的隐含计数器; DX--数据寄存器,常用来存放双字长数据的高16位,或存放外设端口地址。 变址及指针寄存器 变址寄存器常用于存储器寻址时提供地址 SI是源变址寄存器 DI是目的变址寄存器 指针寄存器用于寻址内存堆栈内的数据 SP为堆栈指针寄存器,指示栈顶的偏移地址,不能再用于其他目的,具有专用目的 BP为基址指针寄存器,表示数据在堆栈段中的基地址 SI和DI在串操作指令有特殊用法 SP和BP寄存器与SS段寄存器联合使用确定堆栈段中的存储单元地址 2.1 通用寄存器 一个16位寄存器可以存储一个16位的数据。(数据的存放情况) 一个16位寄存器所能存储的数据的最大值为多少? 答案:216-1。 16位数据在寄存器中的存放情况 数据:20000 二进制表示:0100111000100000 在寄存器AX中的存储: 2.1 通用寄存器 8086上一代CPU中的寄存器都是8位的; 为保证兼容性,这四个寄存器都可以分为两个独立的8位寄存器使用。其它寄存器不能作8位寄存器用。 AX可以分为AH和AL; BX可以分为BH和BL; CX可以分为CH和CL; DX可以分为DH和DL。 8086CPU的8位寄存器存储逻辑 2.1 通用寄存器 以AX为例,8086CPU的16位寄存器分为两个8位寄存器的情况: 2.1 通用寄存器 AX的低8位(0位~7位)构成了AL寄存器,高8位(8位~15位)构成了AH寄存器。 AH和AL寄存器是可以独立使用的8位寄存器。 8086CPU的8位寄存器数据存储情况 一个8位寄存器所能存储的数据的最大值是多少? 答案:28-1。 2.2 字在寄存器中的存储 一个字可以存在一个16位寄存器中,这个字的高位字节和低位字节自然就存在这个寄存器的高8位寄存器和低8位寄存器中。 2.3 几条汇编指令 汇编指令不区分大小写 2.3 几条汇编指令 CPU执行下表中的程序段的每条指令后,对寄存器中的数据进行的改变。 2.3 几条汇编指令 2.3 几条汇编指令 接上图,AL进位的最高位丢失。这里的丢失,指的是进位不能在 8 位寄存器中保存,但是 CPU 并不是真的丢弃这个进位值,可以在后续指令中用带进位的指令来使用上次的进位。这个问题会在后面的课程中讨论。 特别提示 检测点2.1(Page 19) 没有通过检测点请不要向下学习! 2.4 物理地址 CPU访问内存单元时要给出内存单元的地址。所有的内存单元构成的存储空间是一个一维的线性空间。  每一个内存单元在这个空间中都有唯一的地址,这个唯一的地址称为物理地址。 2.6 8086CPU给出物理地址的方法 8086有20位地址总线,可传送20位地址,寻址能力为1M。 8086内部为16位结构,它只能传送16位的地址,表现出的寻址能力却只有64K。 2.6 8086CPU给出物理地址的方法 重点:8086CPU采用一种在内部用两个16位地址合成的方法来形成一个20位的物理地址。即 段地址:偏移地址 8086CPU相关部件的逻辑结构 在8086CPU内部用两个16位地址合成的方法来形成一个20位的物理地址 地址加法器 地址加法器合成物理地址的方法: 物理地址=段地址×16d+偏移地址 例如: 8086CPU访问地址为123C8H的内存单元 2.7 “段地址×16+偏移地址=物理地址”的本质含义 本质含义:CPU在访问内

文档评论(0)

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

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

1亿VIP精品文档

相关文档