a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 101|回复: 1

[计算机四级] 全国计算机四级考试复习纲要七(2)

[复制链接]
发表于 2012-7-31 20:48:14 | 显示全部楼层 |阅读模式
①单指令流、单数据流(SISD)计算机& s% d( a& _( d- k8 c" Z. S! a
②单指令流、多数据流(SIMD)计算机' A# e' D& w9 N/ z& z3 E& s" b- }
③多指令流、单数据流(MISD)计算机( Y0 l. _8 X6 M2 C  }  X
④多指令流、多数据流(MIMD)计算机
9 W, M% q+ V* G4 `$ p(2)冯泽云分类法1972年美籍华人冯泽云(Tse-yun Feng)教授提出按并行度(degree of parallelism)对各种计算机系统进行结构分类的方法。他把计算机系统分成四类:①字串行、位串行(WSBS)计算机②字并行、位串行(WPBS)计算机③字串行、位并行(WSBP)计算机④字并行、位并行(WPBP)计算机4 ?$ a) s7 W! M% R' D) Y3 t0 t  p
(3)Handler分类法1977年德国的汉德勒(Wolfgang Handler)提出一个基于硬件并行程度的计算并行度的方法。他把计算机的硬件结构分为三个层次:处理机级、每个处理机中的算逻单元级、每个算逻单元中的逻辑门电路级。分别计算机这三级中可以并行或流水处理的程序,即可算出某系统的并行度。3 I) ~6 u" a: p3 `
(4)Kuck分类法1978年美国的库克(David J.Kuck)提出与Flynn分类法类似的方法,只是他用了指令流和执行流(execution stream)及其多重性来描述计算机系统控制结构的特征。他把系统结构分为四类:" m/ T, e/ v8 l( N$ ~
①单指令流、单执行流(SISE)* `5 d" p) R7 d% |. }
②单指令流、多执行流(SIME)0 z; O  A$ G! r) R) ^
③多指令流、单执行流(MISE)! M% E" |: F* E1 O  z
④多指令流、多执行流(MIME),它们是典型的多处理机系统。一种好的分类法能帮助我们深入地理解体系结构的特点,使人们能更好掌握计算机的工作原理以及发展趋势。但很难说已经有令人满意的分类法被学术界一致认可。/ P" y: |0 I* ?: m
二、指令系统
6 L  S( u6 p, _+ I(一) 指令集体系结构的分类
. ?9 Y) ]" k% D( R8 C. b* ]2 {' d1.分类的依据. C- y1 x7 I4 w; n: J& r
从体系结构的观点对指令集进行分类,可以根据下述五种尺度:(1)操作数在CPU中的存储方式,即操作数从主存中取来后要把它保存在什么地方。: J) T0 {" g; K8 s3 b$ M9 W
(2)显式操作数的数量,即在条典型的指令中有多少个显式命名的操作数。6 W+ c6 Y5 s8 ?8 U# `8 @& Q" ?
(3)操作数的位置,即任一个ALU指令的操作数能否放在主存中,或者必须把某些操作甚至全部操作数都放在CPU的内部存储器中?如果某操作数要放在主存中,那么它是如何定位的?
回复

使用道具 举报

 楼主| 发表于 2012-7-31 20:48:15 | 显示全部楼层

全国计算机四级考试复习纲要七(2)

(4)指令的操作,即在指令集中提供哪些操作?
( Z1 U* `% |& n( y(5)操作数的类型与大小,即每个操作数是什么类型、尺寸大小,以及怎样对它规定。
; I4 W' p9 Z! N( c5 l& D7 A2.按暂存机制分类
0 ]' v7 c7 Q: h5 A' b# s( ~根据在CPU内部存储操作数的区别,可以把指令集体系分为三类。这三类分别为:堆栈(stack)、累加器(accumulator)和寄存器集(a set of registers)。
6 [# U# p+ q& c3.通用寄存器机的分类6 N/ m5 n9 ?" D2 o/ Y) }' g
通用寄存器机(general-purpose register machines)简称GPR机。GPR的关键性优点起因于编译程序能有效地使用寄存器,无论是计算机表达式的值,还是从全局的角度使用寄存器来保存变量的值。在表达式求解时,寄存器比堆栈或者累加器能提供更加灵活的次序。更重要的是寄存器能用来保存变量。当变量分配给寄存器时,访存流量(memory traffic)就会减少,程序运行就会加速,而且代码密度也会得到改善。可以用指令集的两个主要特征来区分GPR体系结构。这两个特征都是关于ALU指令即典型的算术逻辑指令中操作数的本质。第一个是ALU指令有两个或三个操作数。在三操作数格式中,指令包括两个源操作数物一个目的操作数。在二操作数格式中,有一个操作数既是源操作数又是目的操作数。第二个是ALU指令中有几个操作数是存储器地址,对典型的ALU指令,这个数可能在1与3之间。* W; P3 o9 r2 o7 g* r. i( p
(二) 指令格式及其优化* S; Z0 p" x% b0 y* h! P0 t
1.指令格式的设计考虑对于指令格式(instruction format)的设计有一些优先考虑的原则:3 Z+ T6 z6 l8 D1 u% i
(1)关于指令的长度,短指令要比长指令更节约些。尽管存储器的价格越来越便宜,但设计者还是不愿意浪费它们。
% z$ A; y+ T: j2 c9 g/ {(2)还要考虑是否有足够的空间表示所有期望的操作。来源:www..com
. O5 J2 _- T. a1 W( H* Q; Z7 h(3)在GPR结构中,无论是哪种寄存器与存储器类型,提高存取指令的速度都是应该考虑的一个重要原则。存储器的存取速度越高,就能给处理机提供更多的指令进行处理。在一定的存取速率下,如果平均指令长度较短,那么存储器就能供应更多的指令。
7 Q& D" ^; w8 h& `(4)机器字长(word length)应该是字符长度(character length)的整数倍。否则,在存储字符时就会造成浪费,而且也会造成寻址困难。
  y  n$ V2 @( z  W. K4 K(5)寻址字段长度的选择。假设存储空间是2 19 位,如果存取单位的大小不同,则地址长度也不相同。
, e$ @! W; o# V" y* w( s& @& F2.指令格式化7 |3 g+ ]4 b' ]) ]% R
指令格式的优化既包括指令码的优化,也包括操作数的优化。所谓指令格式的优化就是从整个指令系统的利用率角度出发,尽量设法减少指令中的冗余信息量,以便用最少的位数提供足够的操作信息和地址信息。
, |& @) P, p0 K1 ?! Y3.哈夫曼编码2 M6 O6 W5 E# U
哈夫曼编码的基本概念是:对发生概率高的事件用短码表示,对发生概率低的事件用长码表示,这样做的结果可以使平均编码长度明显压缩,使之很接近理论编码长度。要对指令码进行优化表示,就必须知道每条指令在程度中出现的概率,即指令的使用频度,一般都是通过对大量已有的典型程序进行统计而求得。获得使用频度后,即可根据这些数据构造一个哈夫曼树。具体算法是:把各指令按使用频度从小到大排序;从中取出最小与次最小的两个指令作为叶结点构成二叉树,其根为两结点频度之和,并把比值插入到频度序列中;递归地使用此法继续构造二叉树,直到全部指令都作为叶结点使用完为止。有了哈夫曼树(它是一个二叉树),即可用它进行编码。具体做法是:从根结点开始,把树的左子树线段标为1,右子树线段标为0,直至叶结点。然后从每个指令所在的叶结点位置开始,沿最短路径到达各个叶结点并依次写下沿线的0、1序列。就得到该指令的哈夫曼编码。: D" r6 \$ j1 ?1 ?
(三) 指令集的复杂化
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-9 16:28 , Processed in 0.334972 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表