机组难度很大,机组决定了你的上限,所以如果想考高分的话,需要多花时间去理解"里面"的东西。这里我按照408给的大纲自己备考过程中的进行一些总结,笔记的话可以私聊我,这里不好给。

1、计算机系统概述

性能指标

这一章是408必考的知识点,年年考,分值占的比例很大,大题涉及,选择涉及,所以一定要好好掌握

2、数据的表示和运算

第二章的知识点难理解,涉及到数据的一些表示,这里不介绍数据的具体框架知识点,只介绍一些容易忽视的地方

小知识点
1、对于位数相同的定点数和浮点数,可表示的数据个数应该是一样多的。编码位数一定,编码出来的数据个数就是一定的。
2、补码的一位乘法和原码的除法,其中补码乘法需要做n+1次加,而原码的除法根据第n次余数是否与被除数同号,非同号需要n+1次加
3、正数原码、补码以及反码是一样的,负数的补码等于反码加一,负数的反码等于原码除符号位取反
4、C语言中类型转化方向:char—>int—>long—>double
5、基数越大精度越低,进制越大<span style='color:red;>精度越高。(比如某些10进制小数不能用2进制表示,但是所有二进制小数都可以用10进制表示,这样就很容易理解10进制精度更高)
6.原码表示时,正数规格化形式为0.1xxx,负数格式化形式为1.1xxx
7.注意⚠️IEEE745一定要记住,阶码计算是通过二进制算出来的值E,再减127,而不是128,即1001 0011算出来的阶码应该是20(128+16+2+1-127=20)。其中E的取值为1~254,所以阶码单位为-126~127
8.采用规格化的浮点数最主要是为了增加数据的表示精度。
9.对于无符号整数乘法,若乘积高n位全为0,即使第n位全为1也正好是2^32-1,不溢出,否则溢出
10.CF=count异或sub count为最高位的进位,sub为加减控制信号,加法0,减法1
11.OF=次高进位异或最高进位
12.乘法溢出判断

3、存储系统

小知识点
1.主存和cache之间的数据调动是由硬件自动完成的,对所有程序员均是透明的;而主存和辅存之间的数据调动,则是由硬件和操作系统共同完成的,对应用程序员是透明的(CPU与Cache之间的数据交换是以字为单位,Cache与主存是以块为单位)
2.DRAM的刷新是由硬件自动完成的
3.高速缓冲存储器是从系统结构上进行改造,使得速度变快
4.虚拟存储管理系统的基础是程序访问的局部性原理, 此理论的基本含义是 在程序的执行过程中, 程序对主存的访问是不均匀的
5.虚拟存储器采用的是全相联映射,因为关键是提高命中率,所以还是采用的是回写法

Cache

这一块得区分一下,细节的地方比较多,并且OS也涉及到了

映射方式

1.直接映射

  • Cache行的字段是:标记➕数据(这里的标记是,主存块号➖Cache总行数所占的位数)
  • 直接映射的地址结构是:标记➕Cache行号➕块内地址(可以看出来,其实就是主存的访问地址,只是先通过这个地址去Cache中找。标记➕Cache行号对应的就是主存块的地址,再加块内地址,找到具体位置)

2.全相联映射

  • Cache行的字段是:标记➕数据(这里的标记是就主存块号,所以全相联映射慢,需要和相联存储器一起用)
  • 地址结构:标记➕块内地址(因为是随机的,所以标记就是主存块号)

3.组相联映射

  • Cache行的字段是:标记➕数据(这里的标记是,主存块号位数➖Cache总组数所占的位数(可以和直接映射对比一下),比如主存块号位数是11,Cache有8组,也就是占3位,那么标记占了11 - 3 = 8位)
  • 地址结构:标记➕组号➕块内地址

其中直接映射和组相联映射都是先查找行号/组号找到对应的Cache行/组,然后再和标记进行对比,再检查有效位。

需要注意的点

直接上图

表格
1.有效位:为说明Cache行中的信息是否有效,每一个Cache行需要一个有效位
2.LRU位:替换算法如果采用LRU(最近最少使用算法),位数与Cache组的大小有关系,需要注意2路占一位LRU位,4路占两位LRU位;Clock算法还有访问位(不过用于操作系统)
3.修改位:回写法需要注意增加一个修改位(脏位)
4.失页率的计算要包括全部缺页
5.Cache缺失由CPU硬件实现,缺页处理由软件来完成
6.Cache对所有程序员都透明,而虚存对应用程序员透明,系统程序员不透明。
7.注意⚠️TLB路数并不能决定虚拟地址中标记要留多少位给组,而是根据TLB组数来决定标记留几位。
Cache总位数的计算

注意⚠️组相联和直接映射的区别,组相联和直接映射在计算Cache位数算的都是Cache总行数,组相联计算的不是总组数!

例题

答案

芯片引脚

芯片引脚408考得不深,大概就是SRAM和DRAM最少数目之类的,最多往年没有考过,所以记住即可。

SRAM

SRAM最小数考虑CS(片选信号线)➕读写信号线

例题

答案

DRAM

DRAM最小数考虑读写信号线➕行通选和列通选信号线(一共两根),并且DRAM采用地址复用,地址线减少一半

例题

答案

4、指令系统

无,指令系统因为本科阶段打比赛汇编学得比较多,所以当时这一部分学起来不是很困难。

5、中央处理器

这章知识点很多,容易漏的知识点也比较多,所以需要多总结多思考

小知识点
1.中断响应是CPU在每条指令执行结束前检查的,如果有,就进入中断周期,并且保存断点
2.理解什么是超标量流水线技术,超流水线技术
3.转移指令,PC并不总是修改为转移指令的目标地址,在转移指令时,需判别是否转移成功,成功则是目标地址,失败则是PC➕1
4.间址周期结束时,MDR中存放是的操作数的地址,而具体的操作数,需要到执行周期去取
5.按字节编制的时候需要注意,若题目又说按字边界对齐存放,此时MAR(或者有关的位数)就是主存空间/(字长/8)------16年统考选
6.指令字长一般取字节或者存储字长的整数倍,而不一定都和存储字长一样大
7.取指操作是自动进行的,控制器不需要得到相应的指令
8.空操作指令会导致PC增加,而不是寄存器都不变。并且空指令会进行访存,自己想想为什么?-------因为空指令,会在取指阶段去内存取这条空指令,所以会访存

408-机组一些小知识点相关推荐

  1. python银行家算法例题详解_攒人品之作-能考408大题的知识点整理(有两个知识点的补充)...

    本帖最后由 wudi971 于 2014-1-5 17:47 编辑 ::98::明年出题那么综合,我对不起大家...::116:: 经过陈123同学的提醒,补充两个知识点: 组成原理的微指令的设计以及 ...

  2. JavaScript 小知识点

    原型链相关 最详尽的 JS 原型与原型链终极详解 isNaN() 和 Number.isNaN() 的区别 isNaN() 是 ES1 规范: 是全局方法: 如果参数不是一个 Number 类型,会先 ...

  3. Python小知识点(3)--装饰器

    Python小知识点(3)--装饰器 (1)装饰器含参数,被装饰函数不含(含)参数 实例代码如下: import time # 装饰器函数 def wrapper(func):def done(*ar ...

  4. php-函数小知识点

    <?php //语句 //分支语句 /*$a=5; if($a==5) { echo "相等";} else { echo "budeng";}*/ // ...

  5. 0607am抽象类接口析构方法tostring小知识点

    /* class ren { public static $color;//静态 static function () { ren::$color; self::$color;//self只能写在类里 ...

  6. Python小知识点(5)--面向对象部分

    Python小知识点(5)--面向对象部分 面向对象: 世间万物,皆可分类.--------------------手机<--------------某一个分类 世间万物,皆为对象.------ ...

  7. JS,JQ,PHP的小知识点整理

    在日常开发中所使用的JS,JQ,PHP的小知识点整理 持续更新-- 1.js和jq获取当前的时间戳 方法一: <script>var timestamp = Date.parse(new ...

  8. C语言小知识点练习总结

    最近在准备C语言的上级考试,之前对C接触不多,在练习过程中把一些小知识点记录下来. 1.字符串的截取 利用strncpy函数,传入三个参数,分别为目标字符串,起始位置,长度. 例如将日期字符串转化为数 ...

  9. 通信工程专业的一些小知识点

    原文链接:(更多文章移步链接) 通信工程专业的一些小知识点 - 子木的文章 - 知乎 https://zhuanlan.zhihu.com/p/49285829 一. 无线信道的多径效应导致的频率选择 ...

最新文章

  1. 【学习笔记】拉格朗日插值
  2. 如何在 Linux 中使用类似智能手机外观的 Conky 天气插件
  3. 增加一列为主键 oracle,给oracle数据库增加一列做主键,增加一个sequence,数据库怎么获得主键。...
  4. 计算机进阶操作,新手进阶Win7系统操作使用手册
  5. python实现蜘蛛功能批量下载手机壁纸
  6. IDEA将Maven项目中src源代码下的xml配置文件编译进classes
  7. spring事务管理-注解配置aop事务(重点)
  8. Asp.Net Core WebAPI使用Swagger时API隐藏与分组
  9. 丢失MySQL root 密码?
  10. 查看电脑wifi密码
  11. Android 中的数据储存方案, 持久化技术
  12. Tekla二次开发 第4节 曲梁及双截面梁
  13. js 实现全国省市区三级联动
  14. 第三方支付相关知识结构
  15. install sql server 2016 Error code 0x84B20001
  16. 如何解决算百分比,加起来不是100%的问题
  17. 动态内存的分配与释放
  18. TFTLCD屏幕实验
  19. open failed: EACCES (Permission denied)权限已加,写入sd卡仍报错的解决办法
  20. java idle耗时_chrome中性能分析工具分析页面中Idle(空闲时间)占用太长时间,会不会影响页面性能,如果会是什么原因造成的?...

热门文章

  1. MacOS下在Pycharm中配置Pyqt5工具(2023年新版教程)
  2. Golang的.gitignore文件内容
  3. 在嵌入式x86上构建我的智能家居(home assistant) (三)
  4. AWS 再次发生宕机事件,云时代下的我们该如何补救?
  5. rtthread的console
  6. 高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据...
  7. 慧智微电子冲刺科创板:年亏3亿 大基金与红杉是股东
  8. 酷睿i9-13900K性能出炉Steam游戏开发首选驰网独家i9-13900K服务器水冷定制高主频游戏服务器
  9. Neo4j 完整版安装——neo4j-3.5.6
  10. 助力百万企业从容上云,易建科技有六大“法宝”傍身!