- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章指令系统结构汇编
第 7 章 指令系统结构 7.1 指令格式 7.2 指令操作码的编码格式 7.3 寻址方式 7.4 精简指令系统计算机 第 7 章 指令系统结构 指令系统设计是中央处理器设计的基础。 指令格式、寻址方式和指令系统是指令系统结构的重要方面。 指令格式对CPU的基本组织产生强有力的影响 操作码字段规定CPU实现的操作 算数逻辑操作直接由ALU执行 指令的地址字段和寻址方式对CPU的组织有显著影响(寄存器的数目和类型) 因此CPU的组织应当根据应用目标和计算机性能来仔细考虑指令系统结构。 第 7 章 指令系统结构 7.1 指令格式 计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息: (1) 操作码,具体说明了操作的性质及功能。计算机通过识别该操作码来完成不同操作。 (2) 操作数的地址。CPU通过该地址就可以取得所需的操作数。 (3) 操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中,以便再次使用。 (4) 下一条指令的地址。一般来说,当程序顺序执行时,下条指令的地址由程序计数器(PC)指出,仅当改变程序的运行顺序(如转移、调用子程序)时,下条指令的地址才由指令给出。 7.1 指令格式 从上述分析可知,一条指令实际上包括两种信息即操作码和地址码。 1、典型的指令格式 操作码——指明该指令执行什么性质的操作,不同的指令有不同的操作码。 地址码——指明操作数所在的地址,结果存放的地址以及下一条指令的地址,或者是操作数本身。 7.1 指令格式 2、指令格式的五种类型(根据操作对象地址长度不同划分) 零地址指令 例如:NOP 、HLT,也叫无操作数指令 一地址指令 例如:递增,移位,取反,INC AX,NOT BX 二地址指令 例如:[A1]+[A2]→[A1],[A2]为源,[A1]目的 三地址指令 例如:[A1]+[A2]→[A3], 其中:[A1]、[A2]为源地址,[A3]为目的地址, 操作后源地址内容不变仅被拷贝。 多地址指令:用于实现成批数据处理。 7.1 指令格式 3、地址个数对程序长度和指令长度的影响 同一个问题,用地址数越多的指令编写的程序越短,但指令长度越长. 例:分别用三地址、二地址、一地址指令编制计算x=(a×b+c-d)/(e+f)的程序。 (1)三地址指程序 MUL A,B,X; (A) ×(B) X ADD X,C,X; (X)+(C) X SUB X,D,X; (X)-(D) X ADD E,F,Y; (E)+(F) Y DIV X,Y,X; (X)/(Y) X 7.1 指令格式 3、地址个数对程序长度和指令长度的影响 例:分别用三地址、二地址、一地址指令编制计算x=(a×b+c-d)/(e+f)的程序。 (2)二地址指令程序 MOV X,A; (A) X MUL X,B; (X) ×(B) X ADD X,C; (X)+(C) X SUB X,D; (X)-(D) X MOV Y,E; (E) Y ADD Y,F; (F)+(Y) Y DIV X,Y; (X)/(Y) X 7.1 指令格式 3、地址个数对程序长度和指令长度的影响 例:分别用三地址、二地址、一地址指令编制计算x=(a×b+c-d)/(e+f)的程序。 (3)一地址指令程序 LOAD E; (E) AC ADD F; (AC)+(F) AC STORE X; (AC) X LOAD A; (A) AC MUL B; (AC) ×(B) AC ADD C; (AC)+(C) AC SUB D; (AC)-(D) AC DIV X;(AC)/(X) AC STORE X; (AC) X 7.2 指令操作码的编码格式 指令操作码的位数限制指令系统中完成操作的指令条数。 固定格式操作码 操作码长度固定,一般集中于指令字的一个字段中。在字长较大的大中型以及超级小型机上广泛使用。 优点:有利于简化硬件设计,减少译码时间 7.2 指令操作码的编码格式 指令操作码的位数限制指令系统中完成操作的指令条数。 可变格式操作码 通常在指令字中用一个固定长度的字段来表示基本的操作码,而对于一部分少地址指令则把它们的操作码扩充到该指令的地址字段,即操作码长度可以
文档评论(0)