第8章-计算机系统结构(第五版)李学干.pptVIP

第8章-计算机系统结构(第五版)李学干.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
   【例 8-1】   计算一元二次方程ax2+bx+c=0的根。   设b2-4ac≥0,可以写出如下的FORTRAN程序:   READ *,A,B,C   X1=2*A   D=SQRT(B*B-4*A*C)   D=D/X1   X2=-B/X1   X1=X2+D   X2=X2-D   PRINT *.X1,X2   END 【例 8-2】   仍以一元二次方程求根问题进行说明。图8 - 1表示了程序中数据间的相关关系,其中,①与②、③与④、⑤与⑥均可并行操作,但相互之间因为存在数据相关而不能执行 。如果用加、减、乘、除、平方根等基本操作表示相应的数据流程序,则其数据流程序图如图8 - 2所示。 8.1.2 数据流程序图和语言   可用图8 - 3所示的有向图来表示指令级的数据流程序,它可看成是数据流机器的机器语言。   在数据流机中,根据这些数据流程序图,通过一个分配器或分配程序(Allocator),不断分配适当的处理部件来实现操作符的操作。图8 - 3表示了计算z=(a+b)*(a-b)的数据流程序图。   为表示数据在程序图中的流动状况,利用图8-4中的实心圆点代表令牌沿弧移动。在图8 - 4中, (a)表示初始数据就绪,激发(也称点火或驱动)复制结点,以复制多个操作 数; (b)表示复制结点驱动结束,激发数据已准备就绪的+、-结点; (c)表示+、-结点驱动结束,激发数据已准备就绪的*结点; (d)表示*结点驱动结束,输出计算结果。   数据流程序图中程序的执行过程是一种数据不断进行激发(驱动)的过程。为了满足数据流机程序设计的需要,还需进一步引入许多常用的其他结点。这些结点可分别表示如下   (1) 常数产生结点 (Identity): 没有输入端,只产生常数,如图8 - 5(a)所示。激发后输出带常数的令牌。   (2) 算术逻辑运算操作结点(Operator): 主要包括常用的+、-、*、/、乘方、开方等算术运算及非、与、或、异或、或非等布尔逻辑运算。   (3) 复制操作结点(Copy): 如图8 - 5(b)所示,可以是数据的多个复制,也可以是控制量的多个复制。   (4) 判定操作结点(Decider): 如图8 - 5(d)所示,对输入数据按某种关系进行判断和比较,激发后在输出控制端给出带逻辑值真(T)或假(F)的控制令牌。   (5) 控制类操作结点: 控制类操作结点的激发条件需要加入布尔控制端,如图8 - 6所示。   图8 - 6(b)为F门控结点(F gate),布尔控制端为假,且输入端有数据令牌时才激发,然后在输出端产生带输入数据的令牌。图8 - 6(c)为开关门控结点(Switch),有一个数据输入端 和两个数据输出端,并受控制端控制,激发后,根据控制端值的真或假,在相应输出端上产生带输入数据的令牌。图8 - 6(d)为归并门控结点(Merge),有两个数据输入端和一个数据输出端,并受控制端控制,激发后,根据控制端值的真或假,在输出端上产生带相应输入数据的令牌。 【例 8-3】   图8 - 7是具有条件分支结构的数据流程序图的例子,当x>0时,实现z=x+y; 否则,z=x-y。图8 - 8为具有循环结构的数据流程序图的例子,可以实现对x的循环累加,直到x的值超过1000为止,所得结果为z。 【例 8-4】   图8 - 9是图8 - 3计算z=(a+b)*(a-b)数据流程序图采用活动模片表示法表示的例子。图8 - 10是图8 - 7数据流程序图等效的活动模片表示方式。   数据流程序图实际上是数据流机的机器语言,其优点是直观易懂,但编程效率很低,难以为一般用户所接受。   (1) 遵循单赋值规则。没有传统计算机上所用的变量的概念,只是一种值名。   (2) 有丰富的数据类型。   (3) 具有很强的类型性。   (4) 具有模块化结构的程序设计思想。   (5) 没有全局存储器和状态的概念。   (6) 程序不规定语句的执行顺序,语句的执行顺序也不会影响计算出的最终结果。 8.1.3 数据流计算机的结构   1. 静态数据流机   静态数据流机的数据令牌没加标号。   2. 动态数据流机   动态数据流机最主要的特点是让令牌带上标记,使得在任意给定时刻,数据流程序图任何一条弧上允许出现多个带不同标记的令牌。 8.1.4 数据流计算机存在的问题   (1) 数据流机的主要目的是为了提高操作级并行的开发水平,但如果题目本身数据相关性很强,内涵并行性成分不多,就会使效率反而比传统的Von Neumann型机还要低。

文档评论(0)

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

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

1亿VIP精品文档

相关文档