计算机组成原理·存储系统疑点归纳

2024-06-02 03:20

本文主要是介绍计算机组成原理·存储系统疑点归纳,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  组原这门课有点学得不是很懂,现在快考试了,挑几个做错了的题分析、记录一下。


N o . 1 \mathit{No}.1 No.1 x x x y y y 为定点整数,其格式为 1 1 1 位符号位、 n n n 位数值位,若采用补码一位乘法实现乘法运算,则最多需要_______次加法运算。
A. n − 1 n-1 n1
B. n n n
C. n + 1 n+1 n+1
D. n + 2 n+2 n+2
答案 C

总结一下原码一位乘法、补码一位乘法中,到底进行了多少次移位和多少次加法
首先来看原码一位乘法

原码一位乘法中,加法的次数等于移位的次数。可以看到,如果原数据包含符号位一共有 k k k 位,那么最后移位到只剩下符号位,即移位 k − 1 k-1 k1 次,加法 k − 1 k-1 k1 次。
再来看补码一位乘法

补码一位乘法中,加法比移位多进行 1 1 1 次。如果原数据包含符号位一共有 k k k 位,那么会先在后面加一位“0”得到 k + 1 k+1 k+1 位的“乘数”参与运算。最后移到只剩下 2 2 2 位,即移位 k − 1 k-1 k1 次,加法 k k k 次。
将上述结果列成下表:

乘法类型数据位数(包括符号位)移位次数加法次数
原码一位乘法 k k k k − 1 k-1 k1 k − 1 k-1 k1
补码一位乘法 k k k k − 1 k-1 k1 k k k

套用上表的结果,此题属于补码一位乘法,且 k = n + 1 k=n+1 k=n+1,因此加法次数为 k = n + 1 k=n+1 k=n+1


N o . 2 \mathit{No}.2 No.2 某容量为 256 M B 256\mathrm{\ MB} 256 MB 的存储器由若干 4 M × 8 \mathrm{4M\times8} 4M×8 位的 DRAM 芯片构成,该 DRAM 芯片的地址引脚和数据引脚总数是______。
A. 19 19 19
B. 22 22 22
C. 30 30 30
D. 36 36 36
答案 A

此题容易误选 C。该 DRAM 芯片的数据引脚数肯定是 8 8 8,但是地址引脚数是 11 11 11。因为 DRAM 采用的地址复用技术,分两次将行地址 11 11 11 位)与列地址 11 11 11 位)送入芯片中。如果是 SRAM,就需要有 22 22 22 个地址引脚。


N o . 3 \mathit{No}.3 No.3 假定用若干个 2 K × 4 2\mathrm K×4 2K×4 位的芯片组成一个 8 K × 8 8\rm K×8 8K×8 位的存储器,则地址 0 B 1 F H \rm{0B1FH} 0B1FH 所在芯片的最小地址是______。
A. 0000 H \rm{0000H} 0000H
B. 0600 H \rm{0600H} 0600H
C. 0700 H \rm{0700H} 0700H
D. 0800 H \rm{0800H} 0800H
答案 D

这个题首先值得一提的 8 K × 8 \rm{8K}\times 8 8K×8,它表示存储器有 8 K 8\rm K 8K 个存储单元,每个单元有 8 8 8 位(当初就是这里没弄懂),相当于是按字节编址了。可以在脑海里构想一下芯片的组织方式,首先是 2 2 2 2 K × 4 2\rm K\times 4 2K×4 的芯片位拓展为 2 K × 8 2\rm K\times 8 2K×8,然后用 4 4 4 个拓展后的芯片来进行字拓展。这 4 4 4 个拓展芯片就将存储器地址分为了四个部分:

存储器地址位于第几个拓展芯片( 2 K × 8 2\rm K\times 8 2K×8 芯片)
0000 H ∼ 07 F F H \rm{0000H\sim 07FFH} 0000H07FFH 0 0 0
0800 H ∼ 0 F F F H \rm{0800H\sim 0FFFH} 0800H0FFFH 1 1 1
1000 H ∼ 17 F F H \rm{1000H\sim 17FFH} 1000H17FFH 2 2 2
1800 H ∼ 1 F F F H \rm{1800H\sim 1FFFH} 1800H1FFFH 3 3 3

自然, 0 B 1 F H \rm{0B1FH} 0B1FH 位于第 1 1 1 个拓展芯片内,该芯片的最小地址是 0800 H \rm{0800H} 0800H


N o . 4 \mathit{No}.4 No.4 假定 DRAM 芯片中存储阵列的行数为 r r r、列数为 c c c,对于一个 2K×1 位的 DRAM 芯片,为保证其地址引脚数最少,并尽量减少刷新开销,则 r r r c c c 的取值分别是______。
A. 2048 2048 2048 1 1 1
B. 64 64 64 32 32 32
C. 32 32 32 64 64 64
D. 1 1 1 2048 2048 2048
答案 C

这个题当初是不会做,主要是涉及到一个考点,那就是 DRAM 因为电容容易漏电需要定期刷新数据,且刷新方式为按行刷新。因此减少刷新开销就是降低 r r r 的值。


N o . 5 \mathit{No}.5 No.5 下列关于缺页处理的叙述中,错误的是______。
A. 缺页是在地址转换时 CPU 检测到的一种异常
B. 缺页处理由操作系统提供的缺页处理程序完成
C. 缺页处理程序根据页故障地址从外存读入所缺失的页
D. 缺页处理完成后执行发生缺页的指令的下一条指令
答案 D

缺页处理完成后,缺页处理程序返回到原来的进程,驱使引起缺页的程序重新启动。所以是重新执行发生缺页的指令,而不是执行它的下一条指令。


N o . 6 \mathit{No}.6 No.6 下列选项中,属于指令集体系结构(ISA)规定的内容是______。
I.指令字格式和指令类型
II.CPU的时钟周期
Ⅲ.通用寄存器个数和位数
IV.加法器的进位方式
A. 仅I、II
B. 仅I、II、Ⅲ
C. 仅Ⅱ、IV
D. 仅I、Ⅲ、IV
答案 B

加法器的进位方式,如是串行加法器还是并行加法器,是属于微架构(Microarchitecture)的内容。但是也有说 CPU 的时钟周期是微架构规定的,见这篇文章,这个确实有争议。不过I、Ⅲ毫无疑问是 ISA 的范畴。


N o . 7 \mathit{No}.7 No.7 二维交叉奇偶校验编码不能全部检测以下哪种出错?
A. 2 2 2 位错
B. 3 3 3 位错
C. 4 4 4 位错
D. 5 5 5 位错
E. 6 6 6 位错
答案 CE

当初没有想到 6 6 6 位错会有哪些漏网之鱼,后面通过问老师得知下面这种 6 6 6 位错就能够逃脱检测:
[ ⋮ ⋮ ⋮ ⋯ D D D ⋯ ⋯ D D D ⋯ ⋯ D D D ⋯ ⋮ ⋮ ⋮ ] \begin{bmatrix}&\vdots&\vdots&\vdots\\ \cdots&\red{D}&\red D& D&\cdots\\ \cdots&\red D& D& \red D&\cdots\\ \cdots&D&\red D&\red D&\cdots\\ &\vdots&\vdots&\vdots\end{bmatrix} DDDDDDDDD

D D D 表示正常数据, D \red D D 表示出错的数据。这种情况下,每行每列的校验码都检测不出错误。实际上,二维交叉奇偶校验码不能全部检测的错误是除了 2 2 2 位错之外的所有偶数位错。

这篇关于计算机组成原理·存储系统疑点归纳的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1022889

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

java 恺撒加密/解密实现原理(附带源码)

《java恺撒加密/解密实现原理(附带源码)》本文介绍Java实现恺撒加密与解密,通过固定位移量对字母进行循环替换,保留大小写及非字母字符,由于其实现简单、易于理解,恺撒加密常被用作学习加密算法的入... 目录Java 恺撒加密/解密实现1. 项目背景与介绍2. 相关知识2.1 恺撒加密算法原理2.2 Ja