计算机组成原理计算题(2)

2020-05-13 10:39

?X+Y=+0.01010

[X]补 11.10001 + [-Y]补 11.00111 [X-Y]补 10.11000

因为符号位相异,所以结果发生溢出。

3 pc=14位 IR=18位 AC0=AC1=16位 R0-R3=16位 IAR=14位 IDR=18位 DAR=16位 DDR=16位

4 (1)主存容量256MB,按字节寻址的地址位数应为28位,数据Cache分为8行(用3位地址),每行64B(用6位地址),因此Cache中每个字块的Tag字段的位数应是28-9=19位,还要使用一个有效位,二者合计为20位;因此数据Cache的总容量应为:64B×8+(20/8×8)B = 532B。

(2)数组A[0][31]所在的主存块对应的Cache行号是: (320+31×4)div 64 = 6,

数组A[1][1]所在主存块对应的Cache行号: ((320+256×4+ 1×4) div 64) mod 8 = 5。

所以 a[0][31]所在主存块映射到Cache第6行, a[1][1]所在主存块映射到Cache第5行。

(3)编译时i, j, sum均分配在寄存器中,故数据访问命中率仅考虑数组a的情况。 ①这个程序的特点是数组中的每一个int 类型的数据只被使用一次。数组A按行优先存放,数据Cache正好放下数组半行中的全部数据,即数据的存储顺序与使用次序有更高的吻合度,每个字块存16个int类型的数据,访问每个字块中头一个字不会命中,但接下来的15个字都会命中,访问全部字块都符合这一规律,命中率是15/16,即程序A的数据访问命中率为93.75%;

②程而程序B是按照数组的列执行外层循环,在内层循环过程中,将连续访问不同行的同一列的数据,不同行的同一列数据使用的是同一个Cache单元,每次都不会命中,命中率是0,程序执行特别慢。

根据上述计算出的命中率,得出程序B每次取数都要访问主存,所以程序A的执 行比程序B快得多。

5

1024K*16?2*4?8

512K*4


计算机组成原理计算题(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:余热锅炉

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: