• 【软件设计师-从小白到大牛】上午题基础篇:第一章 计算机组成与体系结构


    前言


    本系列文章为观看b站视频以及b站up主@zst_2001系列视频所做的笔记,感谢相关博主的分享。如有侵权,立即删除。
    视频链接:视频链接(注:文章中有关图片、以及网友的相关评论与总结等内容未标明出处均出自该视频,感谢大家的分享!)
    b站up主页:b站up

    章节提要

    占比 6分
    需要掌握:进制转换、原码反码补码移码、CPU如何划分(区分清楚)以及各部分功能、CISC与RISC特点的区分、流水线特点及相关计算、存储系统相关计算、总线的分类和概念、可靠性计算、校验码的作用、各校验码的特点、运算过程以及编码解码过程

    一、数据的表示(进制的转换)

    • (注:下图来自前言中up主视频)
      在这里插入图片描述在这里插入图片描述
      (说明:其他进制转十进制利用按权展开法,十进制转其他进制利用利用短除法(除n取余)短除法具体步骤:不断除n,直至商为0,余数从下往上排列即为所求结果

    1、R进制转十进制使用按权展开法

    ​​​​在这里插入图片描述

    2、十进制转R进制使用短除法(余数从下往上排列)

    在这里插入图片描述

    3、二进制转八进制与十六进制

    • 一位十六进制数对应四位二进制数,一位八进制数对应三位二进制数。
    • (注:下图来自前言中up主视频)在这里插入图片描述
      (说明:n进制的加法原则:逢n进1,n进制减法原则:借1当n

    1) 每 三位二进制对应一位八进制(从右往左分隔,不足补0
    在这里插入图片描述
    2)每 四位 二进制对应 一位 十六进制(十六进制数10以后用A、B、C、…代替
    在这里插入图片描述

    二、数据的表示(原码反码补码移码

    在这里插入图片描述

    • 原码:数的 二进制 表示形式,并且不足32位补成 32位。(第一位为符号位,0代表正数,1代表负数

    • 反码正数反码等于原码负数 的反码等于 原码符号位不变,其余位按位取反得到

    • 补码正数补码等于原码负数 的补码等于 反码加1 的结果。

    • 移码正数和负数 的移码均等于 补码首位取反 的结果,被用作 浮点运算的阶码

    • 数值表示范围:(n为字长,原码和反码正0负0占两个编码

    在这里插入图片描述
    重点)注:只有涉及原、反、补、移码的运算时,才将首位默认为符号位,否则其他二进制计算都将首位作为数值位

    真题链接

    • 正负0编码相同的是 补码和移码
    • 补码可以 简化计算机运算部件的设计

    三、数据的表示(浮点数运算)

    1、浮点数的表示

    在这里插入图片描述

    2、浮点数运算步骤

    在这里插入图片描述
    对阶:低阶向高阶对齐

    四、CPU结构(运算器与控制器的组成)

    在这里插入图片描述

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:IR、MDR、PC有关访问方面特点)

    1、运算器

    1)算术逻辑单元(ALU):处理数据,实现对数据的算术运算和逻辑运算。

    2)累加寄存器(AC):当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。

    3)数据缓冲寄存器(DR):暂时存放由内存储器读/写的一条指令或一个数据字,将不同时间段内读/写的数据隔离开来。主要作用有:作为CPU和内存、外部设备之间数据传送的中转站;作为CPU和内存、外围设备之间在操作速度上的缓冲;在单累加器结构的运算器中,数据缓冲寄存器还 可兼作为操作数寄存器

    4)状态条件寄存器(PSW):保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,主要分为状态标志和控制标志。

    2、控制器

    1)指令寄存器(IR):当CPU执行一条指令时,先把它从内存储器取到缓冲寄存器中,再送入IR暂存。

    2)程序计数器(PC)CPU自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。

    3)地址寄存器(AR):AR保存当前CPU所访问的内存单元的地址。

    4)指令译码器(ID):对指令中的操作码字段进行分析解释,识别该指令规定的操作,向操作控制器发出具体的控制信号,控制各部件工作,完成所需的功能。

    真题链接

    1. 累加寄存器(AC)
    • CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是 累加寄存器
    • 在CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是 累加寄存器
    • CPU执行算术运算或者逻辑运算时,常将源操作数和结果暂存在 累加器(AC) 中。
    1. 控制器
    • 计算机执行指令的过程中,需要由 CPU的控制器 产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定操作。
    • 在CPU中, 控制器 不仅要保证指令的正确执行,还要能够处理异常事件。
    • 在CPU中,控制器 不仅要保证指令的正确执行,还要能够处理异常事件。(重复考
    • 计算机执行指令的过程,需要由 CPU的控制器 产生每条指令的操作信号送往相应的部件进行处理,以完成指定的操作。
    • 计算机中提供指令地址的程序计数器PC在 控制器 中。
    1. 算术逻辑单元(ALU)
    • 加法器 属于CPU中算术逻辑单元的部件。
    1. 指令寄存器
    • 计算机指令一般包括操作码和地址码两部分,为分析执行一条指令,其 操作码和地址码都应放入指令寄存器(IR)
    • 在CPU的寄存器中, 指令寄存器 对用户是完全透明的。(注:完全透明是指用户无法访问,完全看不到
    1. 指令译码器(ID)
    • CPU中译码器的主要作用是进行 指令译码
    • 指令寄存器的位数取决于 指令字长
    • CPU中译码器的主要作用是进行 指令译码
    1. 程序计数器(PC)
    • 为实现程序指令的顺序执行,CPU 程序计数器(PC) 中的值将自动加1。
    • 在CPU中用于跟踪指令地址的寄存器是 程序计数器(PC)
    • 计算机在一个指令周期的过程中,为从内存读取指令操作码,首先要将 程序计数器(PC) 的内容送到地址总线上。
    • CPU在执行指令的过程中,会自动修改 程序计数器 的内容,以便使其保持的总是将要执行的下一条指令的地址。
    • 在CPU中,用 程序计数器 给出将要执行的下一条指令在内存中的地址。
    • 若某无条件转移汇编指令采用直接寻址,则该指令的功能是将指令中的地址码送入 PC(程序计数器)
    1. 其他知识
    • 计算机中CPU对其访问速度最快的是 通用寄存器
    • VLIW 是超长指令字的简称。
    • CPU依据 指令周期的不同阶段 来区分在内存中以二进制编码形式存放的指令和数据。
    • (注:下图来自百度百科)
      在这里插入图片描述
      (说明:Mbps有关解释)

    3、寻址方式(补充)

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:重点记忆前五种寻址方式的寻址速度,能够辨别题目中描述为哪种寻址方式。寻址速度由快到慢):立即寻址>寄存器寻址>直接寻址>寄存器间接寻址>间接寻址
      (注:立即寻址方式、直接寻址方式、间接寻址方式、寄存器寻址方式和寄存器间接寻址方式都是在代码区,不同的寻址方式的目的也是扩大寻址空间并提高编程灵活性,针对程序的代码区而言
    • (注:下图来自于百度)
      在这里插入图片描述
      (说明:有关不同寻址方式速度的解释)

    真题链接

    • 指令系统中采用不同寻址方式的目的是 扩大寻址空间并提高编程灵活性
    • 寻址速度从快到慢:立即寻址>寄存器寻址>直接寻址

    五、Flynn分类法简介

    在这里插入图片描述

    六、 CISC与RISC

    在这里插入图片描述

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:重点记忆此图。一般而言,CISC和RISC都支持流水线技术,但是CISC不适合采用流水线技术)

    七、流水线

    1、流水线的基本概念

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2、流水线计算

    在这里插入图片描述

    3、流水线吞吐率计算

    1)吞吐率基本概念

    在这里插入图片描述
    2)流水线最大吞吐率
    在这里插入图片描述

    4、流水线的加速比

    在这里插入图片描述

    5、流水线的效率

    1)基本概念
    在这里插入图片描述

    2)计算公式
    在这里插入图片描述
    每一个工作段时长相等的流水线效率最高

    八、计算机层次化存储结构

    在这里插入图片描述
    从上到下储存容量增大

    (Cache不是必须的,但是有了它,速度得到极大提高)

    • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))在这里插入图片描述
      (说明:存储系统的层次结构)

    真题链接

    • 相联存储器 是按内容访问的存储器。
    • 常用的虚拟存储器由 主存-辅存 两级存储器组成。
    • 计算机系统的主存主要是由 DRAM 构成的。
    • DRAM 是一种需要通过周期性刷新来保持数据的存储器件。
    • 计算机采用分级存储体系的主要目的是为了解决 存储容量、成本和速度之间的矛盾

    九、Cache的基本概念

    1、Cache相关内容

    在这里插入图片描述

    2、命中率与失效率

    在这里插入图片描述
    Cache容量越大,则命中率越高。(非线性提高)

    高速缓存中的地址影像方法(补充)

    1. 直接影像

    • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))在这里插入图片描述
      (说明:直接映像方式)

    2. 全相联映象

    • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))
      在这里插入图片描述
      (说明:全相联映像方式)

    真题链接

    • Cache的地址映像方式中,发生块冲突次数最小的是 全相联映像
    • 主存与Cache的地址映射方式中,全相联方式 可以实现主存任意一块装入Cache中任意位置,只有装满才需要替换。
    • 设置Cache的主要目的是 提高CPU访问主存数据或指令的效率
    • 在程序执行过程中,Cache与主存的地址映像 由硬件自动完成。(重点)

    十、时间局部性和空间局部性

    • 时间局部性:如果程序中的某条指令一旦执行,不久以后该指令可能再次执行;如果某数据被访问过,不久以后该数据可能再次被访问。原因:在程序中存在着大量的循环操作。(被引用过一次的存储器位置在未来会被多次引用(通常在循环中))。

    • 空间局部性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围之内,原因:指令通常是顺序存放、顺序执行的,数据也一般是以向量、数组、表等形式簇聚存储的。(如果一个存储器的位置被引用,那么将来他附近的位置也会被引用)。

    • 工作集理论:工作集是进行运行时被频繁访问的页面集合。

    十一、随机存储器与只读存储器

    • 主存可分为随机存储器只读存储器
      在这里插入图片描述
    • 主存编址
      在这里插入图片描述

    相关公式:

    • 存储单元个数=最大地址-最小地址+1
    • 总容量=存储单元个数 * 编址内容(字节/字)=单位芯片容量 * 芯片数
    • 1B(字节)=8bit
    • 1K=210
    • 1M=210K=220
    • 1G=210M=220K=230
    • (注:下图来自前言中up主视频)在这里插入图片描述
      (说明:计算机有关方面的单位转换)
    • (注:下图来自前言中up主视频)
      在这里插入图片描述在这里插入图片描述
      (说明:十进制、二进制、八进制、十六进制中的数码表示;十六进制 10 ~ 15 用 A ~ F 表示
    • (注:下图来自前言中up主视频)
      在这里插入图片描述在这里插入图片描述
      (说明:常见二的幂次对应十进制数)

    输入输出(I/O)控制方式(补充)

    1.程序查询方式

    • (注:下图来自前言中up主视频)

    在这里插入图片描述

    (说明:程序查询方式特点)

    2. 中断驱动方式

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:中断驱动方式特点)

    3. 直接存储器存取方式(DMA)

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:直接存储器存取方式(DMA)特点)

    真题链接

    • 由I/O设备提出的中断请求是可屏蔽中断,电源掉电是不可屏蔽中断
    • 采用 中断方式和DMA方式 控制技术时,CPU与外设可并行工作。
    • 在输入输出控制方法中,采用 DMA 可以使得设备与主存间的数据块传送无需CPU干预。
    • DMA工作方式下,在 主存与外设 之间建立了直接的数据通路。
    • CPU是在 一个总线周期 结束时响应DMA请求的。
    • 采用DMA方式传送数据时,每传送一个数据都需要占用一个 存储周期

    十二、磁盘工作原理

    在这里插入图片描述
    磁头定位到磁道来读取信息

    存取时间=寻道时间+等待时间(平均定位时间+转动延迟)

    注:寻道时间是指磁头移动到磁道所需的时间;等待时间为等待读写的扇区(物理块)转到磁头下方所用的时间

    单缓存区只能等缓存区的数据处理完才能对下一个数据进行读取(需再转一圈回来)

    十三、计算机总线

    总线分为三种类型:内部总线、系统总线、外部总线

    • 内部总线通常指微机内部各个外围的芯片与处理器之间的总线(芯片级别)。

    • 系统总线指微机中各个插件板和系统板之间的总线(插件板级别)。eg.PCI接口

      • 数据总线(DB):用来传送数据信息,是双向的。
      • 地址总线(AB):用来传送CPU发出的地址信息,是单向的。
      • 控制总线(CB):用来传送控制信号、时序信号和状态信息等。

    (口诀:数地控

    • 外部总线指微机和外部设备的总线。

    真题链接

    • 总线包括 数据总线,地址总线,控制总线
    • 在计算机系统中采用总线结构可以 减少信息传输线的数量
    • 总线复用方式可以 减少总线中信号线的数量
    • 单总线结构在一个总线上适应不同种类的设备,通用性强,但是 无法达到高的性能要求,而专用总线则可以与连接设备实现最佳匹配。
    • PCI总线是并行内总线,SCSI是并行外总线
    • PCI总线是并行内总线,SCSI总线是并行外总线。(重复考)

    十四、计算机可靠性相关计算

    R代表可靠性,λ代表失效率

    • 串联系统
      在这里插入图片描述
    • 并联系统
      在这里插入图片描述
      注:μ为系统的失效率,但不建议使用此公式,可以算出系统可靠性后用1来减去系统可靠性求得 。
    • 模冗余系统与混合系统(不常考)
      在这里插入图片描述
      注:m 代表子系统总个数,n+1代表只要有n+1或n+1个以上的子系统能正常工作,系统就能正常工作。

    十五、校验码

    • 检错和纠错
      检错是指可以检查出错误;纠错是指可以在检查出错误的基础上纠正错误。

    • (注:下图来自前言中up主视频)
      在这里插入图片描述
      (说明:码距为2才具有检错能力,码距不小于3才可能有纠错能力

    • 码距
      一个编码系统的码距是整个编码系统中任意(所有)两个码字的最小距离。(也就是改变最少位数变成另一个合法码字的这个位数就是码距的长度)。
      在这里插入图片描述

    • 码距与检错、纠错的关系
      在这里插入图片描述

    • 循环校验码CRC(可检错不可纠错)

      • 原理:利用生成多项式为k个数据位产生r个校验位拼接在尾部来进行编码。
      • 模2除法:指在做除法运算的过程中不计其进位的除法。
        除数几位取被除数前几位,然后上商,对下面数进行 按位异或
        模2除法过程:
        在这里插入图片描述
        普通除法过程:
        在这里插入图片描述
        注:上述数字均为 二进制数
      • 生成多项式转二进制形式:x的多少次方指示对应二进制位是0还是1,即若存在x的几次方,2的几次方的二进制位就为1,否则为0。eg.x4+x3+x+1对应的二进制形式为11011。
        在原始报文后补生成多项式对应二进制位数减1个0,然后用其除生成多项式对应的二进制形式的数,最后把余数替换一开始所补的0,得到CRC编码。(得到的CRC编码与生成多项式的二进制形式的数的模2除法余数为0)。
    • 海明校验码(既可检错也可纠错)

      • 校验位 在完成后的信息编码的 2的次方 位置上,其他位为信息位(数据位)。
        设数据位是n位,校验位是k位,则n和k必须满足: 2k-1>=n+k
      • 校验位数字的确定(信息位数字即为信息中对应位上的数字):将信息位的位数写成2的次方之和的形式,2n位上的校验位的数等于信息位的位数拆成2的次方后包含2n的信息位的数字的异或。例题如下
        在这里插入图片描述
    • 检错纠错方法:按原本产生校验位的方法产生校验位,与收到信息的校验位进行 按位异或,若结果为0,则无错;若存在1,则哪位有1哪位出错了,将对应为数字取反就可纠正。

    真题链接

    • 海明码利用 多组数位的奇偶性 来检错和纠错。
  • 相关阅读:
    Python移动端自动化
    VulnHub narak
    Jackson ObjectMapper activateDefaultTyping 中 JsonTypeInfo 的作用
    物联网低代码平台选型六大标准,赶快学起来
    hadoop2-hive
    docker更改存储目录原因及方案
    线程池的4种创建方式
    解决vscode大量ts文件报错问题
    智工教育:公务员知识点积累一
    Springboot 视图渲染技术(Freemarker)
  • 原文地址:https://blog.csdn.net/dzk666123/article/details/132650629