〈新〉计算机系统概论第五章.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 LC-3 在第章,我们讨论了计算机的基本组件:存储器,处理单元包括相关的临时存储单元通常是一组寄存器,输入和输出设备,控制所有单元(包括它本身)行为的控制单元。我们还了指令周期的6个阶段:取指令,译码,计算地址,取操作数,执行存储结果。下面我们就准备一个真实的计算机——LC-3,确的说,是介绍LC-3的指令集结构ISA)。行为和几条指令介绍,深入研究LC-3的指令集结构。 在第一章中我们提到,指令集结构是软件命令和执行的硬件之间的接口,在本章以及第章和第章,我们指出LC-3的指令集结构的重要特性。利用这些特性用LC-3自己的语言编写程序,LC-3机器语言。 附录A包含了有关LC-3指令集结构的详细信息。 5.1概要 指令集结构ISA)指明了在台机器上编写软件时所要注意的全部信息。换句话说,ISA规定了程序员用机器语言编程时的。对于用高级语言,如C、Pascal或Fortran、COBOL写的程序翻译成计算机机器语言的人,ISA提供了关于该计算机的所有可用信息。 ISA规定了存储器组织,寄存器集和指令集,包括操作码,数据类型和寻址模式。 5.1.1 存储器组织 LC-3的存储器有216即65536个地址空间的单元,16位的寻址能力。不是所有的65536个地址都用作存储单元,对此我们将在第章作详细说明。既然LC-3通常处理的数据单元都是16比特大小,我们把16比特称作一个字,我们说LC-3是字可寻址的。 5.1.2 寄存器 鉴于从存储器中数据花的时间通常远长于一机器周期,LC-3(像大多数计算机一样)提供了可以在一个机器周期内访问数据的附加临时存储空间。 最常用的一种附加临时存储空间就是LC-3所用的是通用寄存器集。这个集合中的寄存器都被称作通用寄存器(GPR)。寄存器拥有和存储单元同的性质――用来存储信息,这些信息不久后会被取。存储在每一个寄存器中的位数通常是一个字。在LC-3中,意味着是16位。 寄存器必须是能被唯一识别的。LC-3定义了8个通用器,用3位编来识别被标记为R0R1……R7。图5.1显示了LC-3的寄存器集的一张瞬态图,有时被称为寄存器堆,在R0R1……R7中分别存储13,4,7,-2,-4,-6和-8这8个值。 回忆把R0和R1中数值相加得到的结果存入R2中的加法指令为: 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 1 ADD R2 R0 R1 这个加法指令的两个加数用[8:6]和[2:0]表示,结果存入的目标由[11:9]表示。图5.2显示了在ADD R2,R1,R0指令执行之后的图5.1的寄存器堆的内容。 5.1.3 指令集 一条指令由两部分组成,即它的操作码指令计算机做的事情和操作数计算机的对象。ISA的指令集是由一组操作码、数据类型和寻址模式定义的。寻址模式决定了操作数位于什么地方。 一个操作码为ADD,寻址模式是寄存器模式的。该指令的操作是让计算机做二进制补码整数的加法,计算机寻找操作数的位置是位于通用寄存器中。5.1.4 操作码 有些ISA有一个非常大的操作码集,每一个操作码对应了一个程序中可能要行的众多任务中的一个。ISA则拥有一个非常小的操作码集。些ISA有专门的操作码来处理科学计算例如,Precision Architecture中有一条指令是执行一个先乘后加的(A*B)+C的三目运算。些ISA有用来处理从万维网获得的视频图信息Intel x86 ISA 加入了许多被MMX的指令,因为它们扩展(Xtend)了ISA指令集以帮助处理网上的多媒体(MMedia)应用。还有其他的一些ISA加入了专门的操作码来帮助支持操作系统的任务例如在二十世纪八十年代盛行的VAX体系, 有一个专门用来在一个正在运行的程序切换到另一个程序之前,保存那个正在运行的程序的所有信息,而几乎所有的计算机都用一长串的指令计算机实现保存那些信息的任务。当一个新的ISA被定义时,关于指令的去留问题,总是要有一番激烈的争论。 LC-3 ISA有15条指令,每一条指令由不同的操作码来区分。操作码是由指令的15:12]位定义的。既然有4位用于操作码,指令就有16种。然而,LC-3 ISA只定义了15条指令,1101码未被定义,被保留下来,用于我们今天还不能预测到的将来的需要。 有三种不同类型的指令,三种不同类型的操作码,分别是:运算,数据传送,控制。运算指令处理信息,数据传送指令在存储器和寄存器之间或在寄存器/存储器和输入/输出设备之间传送数据。控制指令改变指令被执行的顺序。换言之,它们使某一指令而不是存储器中下一个位置的指令被执行。 图5.3列出了LC-3的15条指令,15:12]位代表各操作码。每指令的

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档