计算机组成原理·存储系统疑点归纳
组原这门课有点学得不是很懂,现在快考试了,挑几个做错了的题分析、记录一下。
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 n−1
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 k−1 次,加法 k − 1 k-1 k−1 次。
再来看补码一位乘法:![]()
补码一位乘法中,加法比移位多进行 1 1 1 次。如果原数据包含符号位一共有 k k k 位,那么会先在后面加一位“0”得到 k + 1 k+1 k+1 位的“乘数”参与运算。最后移到只剩下 2 2 2 位,即移位 k − 1 k-1 k−1 次,加法 k k k 次。
将上述结果列成下表:
乘法类型 数据位数(包括符号位) 移位次数 加法次数 原码一位乘法 k k k k − 1 k-1 k−1 k − 1 k-1 k−1 补码一位乘法 k k k k − 1 k-1 k−1 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} 0000H∼07FFH 0 0 0 0800 H ∼ 0 F F F H \rm{0800H\sim 0FFFH} 0800H∼0FFFH 1 1 1 1000 H ∼ 17 F F H \rm{1000H\sim 17FFH} 1000H∼17FFH 2 2 2 1800 H ∼ 1 F F F H \rm{1800H\sim 1FFFH} 1800H∼1FFFH 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} ⋯⋯⋯⋮DDD⋮⋮DDD⋮⋮DDD⋮⋯⋯⋯ D D D 表示正常数据, D \red D D 表示出错的数据。这种情况下,每行每列的校验码都检测不出错误。实际上,二维交叉奇偶校验码不能全部检测的错误是除了 2 2 2 位错之外的所有偶数位错。
相关文章:
计算机组成原理·存储系统疑点归纳
组原这门课有点学得不是很懂,现在快考试了,挑几个做错了的题分析、记录一下。 N o . 1 \mathit{No}.1 No.1 x x x、 y y y 为定点整数,其格式为 1 1 1 位符号位、 n n n 位数值位,若采用补码一位乘法实现乘法运算,则…...
在 GPU 上实现全规模文件系统加速
摘要 现代高性能计算和人工智能计算解决方案经常使用 GPU 作为其主要计算能力来源。这就为 GPU 应用程序的存储操作造成了严重的不平衡,因为每一个此类存储操作都必须向 CPU 发出信号并由 CPU 处理。在 GPU4FS 中,我们针对这种不平衡提出了一个彻底的解决…...
代码随想录算法训练营Day7|454.四数相加II、 383. 赎金信、15. 三数之和、 18. 四数之和
454.四数相加II 四个数组分成两组进行for循环,先用HashMap存储所有第一组for循环出现的和的次数。再进行第二组for循环,每一次得出的和判断其负数是否在map的key中,如果存在,就加上这个value。 class Solution {public int four…...
编译器屏障概述
文章目录 1. 前言2. 编译器内存屏障2.1 编译器内存访问重排序规则2.2 编译器屏障的几种形式2.2.1 显式编译器屏障2.2.2 隐式编译器屏障2.2.3 硬件内存屏障充当编译屏障2.2.4 编程语言内存模型提供的编译屏障 2.3 编译器内存屏障实例2.3.1 Linux spinlock 3. 结语4. 参考资料 1.…...
RUST宏编程入门
宏指示符 在Rust的宏编程中,宏可以接受多种类型的参数,称为“指示符”。这些指示符帮助宏识别不同类型的代码片段,并相应地处理它们。 这里列出全部指示符: blockexpr 用于表达式ident 用于变量名或函数名itemliteral 用于字面常…...
linux安装srs
获取srs cd /opt git clone -b 4.0release https://gitee.com/ossrs/srs.git cd srs/trunk 启动srs ./objs/srs -c conf/srs.conf ./etc/init.d/srs status 访问http://192.168.220.146:8080/出现下方图片说明安装成功 点击进入SRS控制台看到下方图片...
IO流(2)
缓冲流 字节缓冲流 利用字节缓冲区拷贝文件,一次读取一个字节: public class test {public static void main(String [] args) throws IOException {//利用字节缓冲区来拷贝文件BufferedInputStream bisnew BufferedInputStream(new FileInputStream(&…...
【docker】docker启动bitnami/mysql
说明:-v 宿主机目录:docker容器目录,-p 同理 注意:/opt/bitnami/mysql/conf/bitnami 目录自定义conf的目录,不能使用原有的/opt/bitnami/mysql/conf 目录。 容器启动后可在宿主机的/宿主/mysql8.0/conf,添加my_custom.…...
边缘计算、云计算、雾计算在物联网中的作用
边缘计算和雾计算不像云那样广为人知,但可以为企业和物联网公司提供很多帮助。这些网络解决了物联网云计算服务无法解决的许多问题,并使分散的数据存储适应特定的需求。让我们分别研究一下边缘计算、雾计算和云计算的优势。 雾计算的好处 低延迟。雾网络…...
【c语言】探索内存函数
探索内存函数 memcpy函数memmove函数memset函数memcmp函数: memcpy函数 memcpy函数声明: void * memcpy ( void * destination, const void * source, size_t num );将source空间下的num个字符复制到dest中去 函数的使用: 将字符数组a的5字…...
day46 完全背包理论基础 518. 零钱兑换 II 377. 组合总和 Ⅳ
完全背包理论基础 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。 01背包内嵌的循环是从…...
【linux】运维-基础知识-认知hahoop周边
1. HDFS HDFS(Hadoop Distributed File System)–Hadoop分布式文件存储系统 源自于Google的GFS论文,HDFS是GFS的克隆版 HDFS是Hadoop中数据存储和管理的基础 他是一个高容错的系统,能够自动解决硬件故障,eg:…...
Python自动实时查询预约网站的剩余名额并在有余额时发邮件提示
本文介绍基于Python语言,自动、定时监测某体检预约网站中指定日期的体检余额,并在有体检余额时自动给自己发送邮件提醒的方法。 来到春招末期,很多单位进入了体检流程。其中,银行(尤其是四大行)喜欢“海检”…...
Flutter 验证码输入框
前言: 验证码输入框很常见:处理不好 bug也会比较多 想实现方法很多,这里列举一种完美方式,完美兼容 软键盘粘贴方式 效果如下: 之前使用 uniapp 的方式实现过一次 两种方式(原理相同)࿱…...
如何从0到设计一个CRM系统
什么是CRM 设计开始之前,先来了解一下什么是CRM。CRM(Customer Relationship Management)是指通过建立和维护与客户的良好关系,达到满足客户需求、提高客户满意度、增加业务收入的一种管理方法和策略。CRM涉及到跟踪和管理客户的所…...
Numba 的 CUDA 示例 (2/4):穿针引线
本教程为 Numba CUDA 示例 第 2 部分。 按照本系列从头开始使用 Python 学习 CUDA 编程 介绍 在本系列的第一部分中,我们讨论了如何使用 GPU 运行高度并行算法。高度并行任务是指任务完全相互独立的任务,例如对两个数组求和或应用任何元素函数。 在本教…...
项目的各个阶段如何编写标准的Git commit消息
标准提交消息格式 一个标准的提交消息应包括三部分:标题(summary)、正文(description)和脚注(footer)。 1. 标题(Summary) 简洁明了,不超过50个字符。使用…...
Python课设-学生信息管理系统
一、效果展示图 二、前端代码 1、HTML代码 <1>index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…...
openssl 常用命令demo
RSA Private Key的结构(ASN.1) RSAPrivateKey :: SEQUENCE { version Version, modulus INTEGER, -- n publicExponent INTEGER, -- e privateExponent INTEGER, -- d prime1 INTEGER, -- …...
【Linux】Linux基本指令2
目录 1.man指令(重要): 2.echo指令 3.cp指令(重要): 4.mv指令 5.cat指令/echo指令重定向 6.more指令 7.less指令(重要) 8.head指令 9.tail指令 我们接着上一篇:h…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
