【《计算机组成 结构化方法 第6版》】04、了解性章节(4、5、7)

计算机组成结构化方法(原书第6版).pdf 计算机系统结构化方法第六版 立即下载

如果没有学过微机的看4(微体系结构层)、5(指令系统层,即ISA层)、7(汇编语言)章估计很郁闷。由于我是电子专业,读书的时候做过一些嵌入式开发和比赛,现在转做java感觉这几章对做java开发的来说不太重要,可以当做增加知识面了解下。第5节讲思想的部分还是值得看的。
如果研究JVM的字节码,这几章倒是可以做个铺垫。

简述

微体系结构层的作用是实现位于其上的指令系统层(ISA),简单的说就是实现汇编语言。
ISA层是编译器和硬件之间的接口,它是一种硬件和编译器都能理解的语言。
ISA

提高CPU性能

私以为4、5章和平时开发做紧密的就是4.5节,值得反复看,理解其中的设计思想。但是这部分我觉得看《计算机体系结构 量化分析方法》更好,不过作为入门了解,对做开发的程序员来说也够了。

高速缓存

多级缓存

cache用来填补CPU和内存之间的速度差异。它里面存放的是最近刚被使用到的内存字。
现代的计算机多使用三级缓存技术。

  • 一级缓存:芯片内部,通常为16~64KB,分为指令缓存和数据缓存。每个cache都可以独立地读写内存,这使得存储系统的带宽增大一倍
  • 二级缓存:芯片旁边,通过高速通道与CPU相连。通常为512KB~1M,是通用的cache,既包括数据也包括指令
  • 三级缓存:CPU之外,通常为4~8M。访问速度比内存快的多。

cahce的内容是逐级包含的,3级cache中包含了2级的全部内容,2级cache中包含了1级cache的全部内容。
3级缓存

两个思想

实现cache的两个重要思想是空间局部性原理和时间局部性原理。

  • 空间局部性:最近被访问的地址附近的地址很可能在将来被访问。cache使用这种特性一次把比实际需要的更多的数据调入,希望它们将来能被用到。
  • 时间局部性:最近访问的地址将会被再次访问,比如循环指令。当cache不命中时,通过LRU算法来替换数据项。

工作方式

所有的cache都使用下面的模型。主存被分成固定大小的称为cache块的块。一个 cache块通常由4 ~ 64个连续的字节组成。cache块从0开始连续编号,因此如果使用32个字节的块,块就是字节0 ~ 31,块1就是字节32 ~ 63,依次类推。
任何时候都有某些块位于高速缓存中。当需要访问内存时,cache控制器电路检查需要访问的字是否在cache块。.如果在,就使用该值,这样可以节约一次内存访问。如果该字不在内存中,将从cache 中移去某些块,并用从内存中或者从更低级别的cache中取出的块替换这些块。替换时有多种机制,但是其基本思想是在cache中保存最常用的块,这样可以最大限度地提高cache命中率。

实现方案

直接映射的cache和组相连的cache是最常见的加速内存访问的高速缓存。

分支预测和推测执行

说白了,分支预测就是通过分析程序历史运行记录,来对下一步进行预判。通常由静态分支预测和动态分支预测。
实现很复杂,偏硬件,书里描述的也比较复杂,可以参看这篇博文

推测执行是在分支预测的基础上实现的一种预测机制。

乱序执行和寄存器重名

这节也很复杂o(╥﹏╥)o。只需知道CPU不是完全按顺序执行指令的,而是通过指令重排,乱序执行指令,以获得更好的性能

CPU即使使用流水线和超标量技术使得速度提高了数倍,但是当指令之间存在相关性时,就会打破这种提升。比如某条指令需要用到前一条指令的计算结果,这就使得第二条指令必须等待。为了克服这些问题以达到更好的性能,某些CPU可以跳过相关的指令执行后面不相关的指令。由内部的指令调度算法来保证程序的运行结果和按照顺序执行时的结果相同。

《计算机组成 结构化方法( 第6版)》 计算机组成 结构化方法( 第6版),高清无水印版,文件大小说明一切! 立即下载

相关推荐

计算机组成结构化方法pdf

计算机组成结构化方法,扫描版,非常清晰。 本书采用结构化方法来介绍计算机系统,书的内容完全建立在“计算机是由层次结构组成的,每层完成规定的功能”这一概念之上。作者对本版进行了彻底的更新,以反映当今最重要的计算机技术以及计算机组成和体系结构方面的最新进展。书中详细讨论了数字逻辑层、微体系结构层、指令系统层、操作系统层和汇编语言层,并涵盖了并行体系结构的内容,而且每一章结尾都配有丰富的习题。 本书适合作为计算机专业本科生计算机组成与结构课程的教材或参考书,也可供相关领域技术人员参考。

计算机组成 机构化方法 笔记 持续更新中——

系列文章目录 计算机组成结构化方法笔记 第三章:数字逻辑层内存 cpu 总线 文章目录 系列文章目录 前言 一、内润 二、使用步骤 1.引入库 2.读入数据 总结 前言 依据书籍《计算机组成 结构化方法》 学习笔记记录 一、内存 1.1 锁存器 电平触发的存储单元 SR锁存器 S,R两个输入信号 S作为设置锁存器 R作为重新设置锁存器 S/R= 1 时 为不稳定状态 正常工作状态应遵守的约束条件、不允许出现遵守的约束条件 时钟SR锁存器 为...

weixin_58364578的博客 577

计算机组成结构化答案(第五版英文版)Structured.Computer.Organization.pdf

计算机组成结构化答案(第五版英文版)Structured.Computer.Organization.pdf

【《计算机组成 结构化方法 第6版》】01、结构化计算机组成

1、新版变化 链接: https://pan.baidu.com/s/15lD6PNs5iJmA3qZLqyrkPQ 提取码: qbtj 示例上的变化 桌面计算机:Core i7(x86指令) 移动计算:OMAP4430(ARM指令) 嵌入式:ATmega168(AVR指令) 汇编语言:8088 2、章节变化 第2章:增加 GPU、Flash存储设备、触摸屏 第3章:增加 FPGA 第4章:内容没大的改变,只换了示例 第5、6章:仅就新的示例体系结构所涉及的部分做了改写,增加了对 ARM

github_39353936的博客 1569

计算机组成:结构化方法 中文扫描第6版高清.zip

本书采用结构化方法来介绍计算机系统,书的内容完全建立在“计算机是由层次结构组成的,每层完成规定的功能”这一概念之上。作者对本版进行了彻底的更新,以反映当今最重要的计算机技术以及计算机组成和体系结构方面的最新进展。书中详细讨论了数字逻辑层、微体系结构层、指令系统层、操作系统层和汇编语言层,并涵盖了并行体系结构的内容,而且每一章结尾都配有丰富的习题。 本书适合作为计算机专业本科生计算机组成与结构课程的教材或参考书,也可供相关领域技术人员参考。

计算机组成 结构化方法 中文扫描第6版(卷1)

计算机组成 结构化方法 中文扫描第6版(三卷下全方可解压)

软件设计师:11-结构化开发与UML

基础知识题目解说

Laptoy的博客 2万+

西门子S7-1200与FUNUC机器人MODBUS TCP通信

PLC与机器人通讯

Illusssion的博客 1万+

软件设计师冲刺:临考快速记忆

1、立即-寄存器-直接-寄存器间接-间接1、奇偶校验码:只能检奇偶个数错不能纠错2、海明码:运用奇偶性来检错和纠错,码距是3,2^k-1>=n+k3、循环冗余检验码:码距为2,运用模二运算进行检错不能纠错(数据位后接校验位)RISC(硬布线,寄存器)CISC(微程序)流水线计算 = 一条完整指令执行时间 + (n-1)x流水线周期吞吐量 = 指令条数/流水线计算加速比 = 使用流水线/不使用流水线DRAM:主存,需要刷新,集成高SRAM:寄存器,不需要刷新ROM:只读。

Laptoy的博客 2万+

ReportStudio入门教程(四十一) - 固定报表列宽

我们继续上一篇博客,让他看起来

什么是江湖? 3515

开源分享:苹果群控手机源代码解析与实战

本文介绍了苹果设备群控的基本原理和实现方法,重点解析了基于Python+Appium的群控系统构建。主要内容包括:1)设备连接管理技术(USB/Wi-Fi);2)自动化控制方式(WDA/AppleScript/Appium);3)实战演示了通过Python脚本实现多设备同时控制,涵盖环境配置、代码解析和功能说明;4)提出了多线程、图像识别等优化方向。文章为开发者提供了快速上手的群控方案,适用于自动化测试、批量管理等场景,并推荐了相关开源项目参考。

2403_88540309的博客 1343

软件设计师の备考经验帖及复习资料

祝大家逢考必过

Laptoy的博客 8万+

人脸情绪识别(使用深度学习和OpenCV)

基于opencv与深度学习的人脸情绪识别系统

mx0390304的博客 8251

软件设计师:01-计算机组成原理与体系结构

1、R进制转十进制 2、十进制转R进制 3、二进制转八进制与十六进制4、二进制转十六进制原码的左边第一位为符号位(正数为0,负数为1),其余位表示数值(真值绝对值的2进制数)。在上面的图表中,如果我们用原码进行的计算,会得到 这样的二进制数,此时的结果为那么我们每个人都知道,所以原码表示的这种方式,是不能在机器中做直接的计算的(用补码计算)取值范围可以看到补码的取值范围比原码和反码都要多一个所以补码的取值范围就要多一个,也就是 00000000 既要对应 +0 ,也要对应一个 -0 + 先将小阶尾数

Laptoy的博客 6万+

《LabVIEW ZYNQ实战指南》第6章>>案例解析:基于USB WiFi模块的ZYNQ无线通信部署与Linux RT开发

本文详细解析了如何为ZYNQ开发板部署USB WiFi模块,实现无线通信。通过LabVIEW Linux RT环境,利用封装好的驱动VI,开发者可轻松配置ZYNQ连接无线网络,摆脱网线束缚,实现程序无线部署与远程调试,为工业物联网应用奠定基础。

app77的博客 754

DBSCAN聚类算法——机器学习(理论+图解+python代码)

一、前言 二、DBSCAN聚类算法 三、参数选择 四、DBSCAN算法迭代可视化展示 五、常用的评估方法:轮廓系数 六、用Python实现DBSCAN聚类算法 一、前言 去年学聚类算法的R语言的时候,有层次聚类、系统聚类、K-means聚类、K中心聚类,最后呢,被DBSCAN聚类算法迷上了,为什么呢,首先它可以发现任何形状的簇,其次我认为它的理论也是比较简单易懂的。今年在python...

huacha__的博客 20万+

软件设计师:二周目上午真题

上午真题错题解析

Laptoy的博客 5850

EPLAN二次开发入门:Visual Studio 2019环境配置与插件调试实战

本文详细介绍了EPLAN二次开发入门的关键步骤,重点讲解如何在Visual Studio 2019中配置开发环境并进行插件调试。通过创建符合命名规范的项目、引用核心API库、实现插件接口以及使用附加进程调试等实战技巧,帮助电气工程师快速掌握EPLAN插件开发,提升自动化设计效率。

h6i7j8的博客 761

软件设计师:04-计算机网络

例题:这道题考察的是局域网和广域网的差异问题局域网是工作在最下面的2层协议中的(即物理层和数据链路层)。在同一个局域网内部是可以发送广播的,但是只要出了这个局域网的范围,那么就收不到广播了A选项:P和Q之间通过网桥连接,而网桥是数据链路层的典型设备,所以P和Q是属于同一个局域网的,可以通过。B选项:P和S之间通过路由器连接,路由器是网络层的设备,所以P和S不属于同一个局域网,所以不能通过。C选项:Q和R之间通过集线器连接,连接在同一个网桥之下,而集线器是物理层的设备,不会造成影响,所以可以通过。D选项:S和

Laptoy的博客 1万+

015:机载三维激光扫描技术相关知识

机载三维激光扫描系统(LiDAR)是集激光、GPS、INS等尖端技术于一体的三维航空遥感技术,能高效准确获取地表三维信息。该系统由GPS、INS、激光扫描测距系统、成像装置和工作平台组成,各部件协同工作以获取精确的空间定位、运动状态、地表三维坐标及真实色彩信息。通过制定飞行计划、安置GPS基站、激光扫描测量、惯性测量及获取高清数码影像等步骤,机载LiDAR技术能实时获取大范围高精度三维数据。该技术具有扫描速度快、精度高、全数字特征等优势,广泛应用于测绘、工程、环境监测和城市建设等领域,如城市三维模型重建、灾

qq_31762031的博客 1725

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

软件设计师:01-计算机组成原理与体系结构(备考)

计算机组成原理与体系结构(软考备考)

小赵的博客 1016

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

软件设计师:二周目下午真题

下午真题解析

Laptoy的博客 1万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

软件设计师:12 - 下午题(试题一)历年真题

软件设计师:下午题(试题一)历年真题及解析(备考)后续持续更新

小赵的博客 2059

软件设计师:12-下午题历年真题

维修记录(故障编号,租客编号,楼编号,公寓号,故障描述,员工编号,维修日期,维修内容)【问题1】给出A1~A3所对应的参与者名称,U1~U4的实例名(7分)【问题3】请补充缺失的4条数据流,给出数据流的名称及其起点和终点(6分)【问题2】补充关系模式并指出部门、员工和安排承运关系的主键和外键(8分)【问题4】说明实体E1和E3之间可否有数据流(2分)【问题2】给出D1~D4数据存储的名称(4分)(c)申请号,客户号(一对多,在多的表设外键)【问题2】给出C1~C5所对应的类名(5分)............

Laptoy的博客 1万+
上一篇: 【《计算机组成 结构化方法 第6版》】03、数字逻辑层
下一篇: 【Java程序员应该掌握的底层知识】 01 硬件知识
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值