第一章 计算机组成与结构体系

目录
  • 数据的表示与进制的转换

      R进制按权展开法
    
      十进制转换为R进制法
    
      二进制与八进制、十六进制之间的转换(三位二进制表示一位八进制)(四位二进制表示一位十六进制的数)
    

  • 码制

      原码
      
      反码
      
      补码
      
      移码
    

  • 数值的表示范围

      				整数 								小数
    
      原码 (-(2 ^ n-1)-1)) ~ (2^ (n-1)-1)      -(1- 2^ -(n-1))~ (1- 2^ -(n-1))
      
      反码 (-(2 ^ n-1)-1)) ~ (2^ (n-1)-1)      -(1- 2^ -(n-1))~ (1- 2^ -(n-1))
      
      补码 (-2 ^ (n-1))~(2^ (n-1)-1 )         -1 ~ (1-2 ^-(n-1))
      
      移码 (-2 ^ (n-1))~(2^ (n-1)-1 )         -1 ~ (1-2 ^-(n-1))
    

  • 浮点数的运算

      浮点数的表示:
      
      浮点数的存储:
      
      浮点数的运算:
    
      特点:
    

  • 计算机的结构

      运算器 (算术逻辑单元ALU、累加寄存器AC、数据缓冲寄存器DR、状态条件寄存器PWD)
      
      控制器(指令寄存器IR、程序指令计数器PC、地址寄存器AR、指令译码器ID,时序部件)
      
      存储器
      
      输入设备
      
      输出设备
    
      其中 运算器、控制器、寄存器组、内部控制总线构成计算机的核心中央处理单元(CPU)
    


  • 指令的基本概念

      一条指令就是机器语言的一条语句。是具有意义的二进制代码
    
      指令的表示格式: 操作数码+地址数码
    
      根据地址码的格式又分为 三地址指令、二地址指令、一地址指令、零地址指令
    

  • 寻址方式

      立即寻址方式         指令中存储的是操作数  速度快、灵活性差
    
      直接寻址方式         指令中存储的是指向操作数的地址
    
      间接寻址方式         指令中存储的是指向操作数地址的地址
    
      寄存器寻址方式    	  寄存器中存储的是操作数
    
      寄存器间接寻址方式    寄存器中存储的指向操作数的地址
    


  • 流水线的概念

      在执行程序的时候, 多重指令重叠进行操作的准并行处理技术
      
      例如:一条指令完成需要经历取指、分析、执行三个过程
    
      非流水线处理:先执行第一条指令的取指、然后分析、最后在执行。这个过程中不做任何事情。
    
      流水线处理:  在执行第一条指令的分析的时候,执行第二条的取指。在执行第一条指令的执行的时候。
      			   做第二条指令的分析,和第三条指令的取指操作。这样进行流水线的操作
    

  • 流水线的计算

      指令执行完成的时间:
    
      理论公式:(t1+t2+t3+...+tK) + (n-1)*t
    
      (t1+t2+t3+...+tk)表示的是一个指令执行完成的时间。t1,t2...表示指令的步骤
    
      n表示指令条数。t 表示流水线周期
    
      实际公式:
    
      k*t + (n-1)*t  字母的表示和上面的是一样的
    

  • 超标量流水线以及流水线 吞吐率 的计算

      超标量流水线:就是多条流水线共同作用。
    
      有几条流水线,度就为几
    
      吞吐率:单位时间内完成的指令数量或者输出的结果 TP = 指令数量 / 流水线运行的时间
    
      最大吞吐率: 流水线周期的倒数。 TP = 1 / t (t为流水线周期)
    

  • 层次化存储结构

      cup            寄存器、容量小、访问速度快、成本高
    
      Cache          按内容存取
    
      内存(主存)      分 随机存储器(RAM) 和 只读存储器(ROM)
    
      外存(辅存)      硬盘、U盘 光盘等
    
      从上到下容量依次增大,但是访问速度依次减小。
    

  • Cache-高速缓存

      Cache高速缓存就是在CUP和主存储器之间,用来缓冲速度的一个部件。
    
      访问具有一定的命中率,并不是每次访问都能够访问成功
      
      t3 = ht2 +(1-h)*t1 (这里的t3 表示系统的周期时间、t2表示Cache的访问时间,h表示访问的命中率,t1表示的是主存储器的访问时间)
    

  • Cache–映像

      Cache--映像分为三种存储形式
    
      直接关联映像、全相关联映像、组相关联映像
    

  • 主存–编址与计算

      按字节存储单元编址---最小的寻址单元是字节
    
      按字存储单元编址---最小的寻址单元的是字
    
      存储器的个数 = 总的容量 / 单个存储器的容量
    

  • 总线

      总线的分类分为:
    
      地址总线、数据总线、控制总线
    


  • 校验码

       奇偶校验码
    
       循环校验码CRC
    
       海明码
    

数据的表示
R进制转十进制按权展开法
  • 说明

    其具体的操作方法是
    将R进制的数转换为R的K次方 的表示形式
    即幂的底数为R 指数为K

  • 示例

    二进制转为十进制

    (111000.111) 2进制

    整数部分从小数点右边往左边数 权位为 0,1,2,3,4,5
    小数部分 从小数点右边往左边数 权位为 -1、-2、-3

    所以出来就是

    1*2^5 + 1*2^4 + 1*2^3 + 1*2^2 + 1*2^1 + 1*2^0 + 1*2^-1 + 1*2^-2 + 1*2^-3
    

    八进制转十进制

    (17635)从右边往左边数 权位0、1、2、3、4
    所以出来就是

    1*8^4 + 7*8^3 + 6*8^2 + 3*8^1 + 5*8^0
    
  • 总结
    总结起来就是换算的时候,先看是什么进制,然后

    整数部分从右往左边数、由0开始
    小数部分从左往右边数、由-1开始


十进制转换为R进制
  • 说明
    十进制转换为R进制是有很多的方法的,一般用我们熟知的短除法

  • 示例
    在这里插入图片描述
    将余数从下到上排列起来。


二进制与八进制、十六进制的转换
  • 说明
    其实二进制与八进制、十六进制的转换特别简单
    我们来看八进制

  • 八进制

      八进制逢 8 就进一,所以能够表示的最大数为 7
    
      而 7 用二进制表示就是**111**
    
      而 0 用二进制表示就是**000**
    
      所以说八进制用三位的二进制表示就行。
    
    • 转换

      二转八 把数字从右往左,三位一划分。然后换成八进制就行了
      八转二 从左往右 一位变三位 。就是二进制了。

    • 示例:

      二转八
      (110 110 100 011)二进制
      (6643) 八进制

      八转二
      (35674)八进制
      (011 101 110 111 100 ) 二进制


十六进制(A,B,C,D,E,F分别表示从10到15.)
  • 说明

      十六进制的表示和八进制是差不多的
      
      十六进制最大的数是15 用二进制表示就是 1111 
    
      需要用四位的二进制才能够表示
    
      所以和八进制的转换一样。
    

    四位二进制表示一位十六进制

    一位十六进制用四位二进制表示

    就不进行演示了

返回目录


码制
  • 说明

    常见的码制有 原码、反码、补码、移码

  • 图表

    在这个表中机器字长为8位。在表示里面,常常都是最高位为符号位 0表示正,1表示负

    码制数值1数值-11-1
    原码0 000 00011 000 00011 000 0010
    反码0 000 00011 111 11101 111 1111
    补码0 000 00011 111 11110 000 0000
    移码1 000 00010 111 11111 000 0000

    通过这个表可以看到

    1. 正数 的原码、反码、补码都是一样的
    2. 负数的反码 是原码符号位不变 其余按位取反
    3. 负数的补码 是在反码的基础上末尾加 1
    4. 正负数的移码 都是将补码符号位取反,其余不动

返回目录


数值的表示范围
  • 说明

    关于数值的表示范围,我们先用4位数来进行演示一下。

    四位数能够表示的范围:

      除去最高一位是符号位,剩下的三位数二进制数最大的表示范围也就是(1 111)(-7) 到(0 000)(+7)
      
      就是说表示的范围是(-(2^n-1 -1))到(+(2 ^n-1 -1)) 这是原码的范围。下面的反码、补码、移码也
    
      是一样进行计算带入的。
    
  • 图表

    码制定点整数说明定点小数
    原码-(2^ n-1 -1) ~ +(2^n-1 -1)-(1-2^ -(n-1))~ +(1-2^ -(n-1))
    反码-(2^ n-1 -1) ~ +(2^n-1 -1)-(1-2^ -(n-1))~ +(1-2^ -(n-1))
    补码-(2^ n-1) ~ +(2^n-1 -1)定点整数的0只有一个,-0没有补码和移码的,所以上面加1这里没有加-1 ~ (1-2 ^ -(n-1))
    移码-(2^ n-1) ~ +(2^n-1 -1)定点整数的0只有一个,-0没有补码和移码的。所以上面加1这里没有加-1 ~ (1-2 ^ -(n-1))

返回目录


浮点数的运算
  • 浮点数的表示:

    N = 尾数*基数^ 指数 (简单的说就是我们熟知的科学计数法)(3.14 * 10^3)

      	尾数就是 3.14 
      	
      	基数就是10
    
      	指数就是3
    

  • 浮点数的运算

       对阶 > 尾数计算 > 结果格式化
    

  • 特点:

    1. 一般来说尾数用补码表示,阶码移码表示。
    2. 尾数的位数决定数的有效精确度。位数越多表示的精确度越大。
    3. 指数的位数决定数的表示范围。位数越多表示的范围越大。
    4. 对阶的时候一般是小数向大数靠齐。
    5. 对阶是通过小数点左移实现的,不够一般情况下补0.

  • 浮点数的存储格式

    阶符阶码数符数码
    解码的符号 0正 1 负阶码的数值数字的符号 0正 1 负数字的数值

返回目录


计算机组成
  • 计算机的结构

      计算机主要由 运算器、控制器、存储器、输入设备、输出设备这五大部件构成
    
      运算器和控制器等部件被集成在一起叫做中央处理单元(CPU)。
    
      CPU是计算机的核心,用于数据的处理加工,能够完成数据的算术运算和逻辑运算以及控制的功能。
    
      存储器分为外部存储和内部存储。
      
      内部存储一般是指的内存。内存具有容量小访问速度快等特点。
    
      外部存储器有很多,常见的硬盘,光碟等等。一般都是容量大而访问速度慢。
    
      输入输出设备统称为外设。用于属于原始的指令和输出数据
    

  • 运算器

      它是计算机的数据加工处理部件。
    
      用于完成计算机的各种数据的算术和逻辑运算。
    
      相对控制器而言,它只是执行部件,收到控制器的指令而行动。		
    
      1. 执行所有的算术运算(包括加减乘除等基本运算和附加运算)
      
      2. 执行所有的逻辑运算(与、或、非、零值的测试和两个值的比较等)
    

  • 运算器组成

    运算器的组成作用
    算术逻辑单元ALU数据的算术运算和逻辑运算
    累加寄存器ACAC是通用的寄存器。用于在ALU运算的时候为其开辟一个存储单元。用来暂存数据。运算器中最少要有一个累加寄存器
    数据缓冲寄存器DRDR写内存的时候、暂存指令或者数据。 外部设备之间数据的中转站。CPU和主存、外设之间操作速度的缓冲
    状态条件寄存器PSW存储 状态标志和控制标志 这在汇编中我们讲过的。

    重点的是状态条件寄存器在软考中有时划分为控制器有时划分为运算器


  • 控制器

      运算器只能够用来进行计算,而控制器是控制整个CPU的。
    
      它决定了计算机运行中的自动化,它不仅要保证计算机的正确执行还要能够处理异常的事件。
    
      控制器一般包括 
    
      指令控制逻辑、时序控制逻辑、总线控制逻辑、中断控制逻辑 等几个部分
    
      指令控制逻辑要完成 取指令、分析指令、执行指令的操作
    
      其过程分为 取指令、指令译码、按指令操作码执行、形成下一条指令地址等步骤
    

  • 控制器的组成

    控制器的组成作用
    指令寄存器 IR存储即将执行的指令
    程序计数器 PC存储下一条要执行指令的地址
    地址寄存器 AR保存当前CPU所访问的内存单元的地址
    指令译码器 ID对指令中的操作码字段进行分析解释,识别该指令规定的操作,并向控制器发出通知
    时序部件控制每个指令执行时间,让每个指令井然有序的进行

返回目录


计算机体系结构-Flynn
  • 说明:

    计算机体系结构分类有Flynn分类法冯泽云分类法Handler分类法Kuck分类法 很多种。

    我们主要介绍的是 Flynn分类法

  • Flynn分类法

    体系结构类型结构关键特性代表
    单指令流 单数据流 SISD控制部分:一个;处理器:一个;主存模块:一个;单处理器系统
    多指令流 单数据流 MISD控制部分:多个;处理器:一个;主存模块:多个;目前证明是不可能实现的。至少是不实际目前没有,有文献说流水线计算机可以实现
    单指令流 多数据流 SIMD控制部分:一个;处理器:多个;主存模块:多个各处理器以异步的形式执行同一条指令并行处理机、阵列处理机、超级向量处理机
    多指令流 多数据流 MIMD控制部分:多个;处理器:多个;主存模块:多个能够实现作业、任务、指令等各级全面并行多并行超级计算机

返回目录


指令的基本概念
  • 说明

    一条指令就是机器语言的一个语句,它是一组有意义的二进制代码

    指令的基本格式为:

    操作码字段地址吗字段

    操作码字段:
    操作码字段部分指出了计算机要进行什么性质的操作、如加法、减法、乘法、取数等等。

    地址码字段:
    地址码字段部分需要存储进行操作的数值的地址、以及操作完结果存放的位置。

    从其地址结构可以分为三地址指令、二地址指令、一地址指令、零地址指令。

  • 示例:

    op的操作数码的意思就是 +

    三地址指令

    OPA1A2A3

    二地址指令

    OPA1A2

    一地址指令

    OPA1

    零地址指令

    OP

返回目录


寻址方式
  • 说明

    常见的寻址方式有立即寻址直接寻址间接寻址寄存器寻址寄存器间接寻址

    假如有一个珠宝,你非常的珍惜它。

    你把它 直接放在指令的操作数里面,立即就可以拿到,叫 立即寻址

    用箱子锁起来然后将钥匙放在操作叔里面。叫 直接寻址

    为了防止钥匙丢失、将钥匙锁在一个小盒子里,将小盒子的钥匙放在指令里面。这样要先找到钥匙才能够打开箱子。 这种叫做 间接寻址

    寄存器寻址也是一样理解。


  • 图解
    在这里插入图片描述这张图就显示的非常清楚了

返回目录


CISC和RISC两种指令集的发展方式
  • 说明

    CISC和RISC 是指令集发展的两种主要的方式


  • 图解:
    在这里插入图片描述

  • 两者的比较
    在这里插入图片描述

返回目录


流水线的概念
  • 说明

    流水线是程序执行时 多种指令重叠进行操作的 一种准并行处理实现技术。

    各种部件的同时处理是针对不同部件而言的。它们可同时为多条指令的不同部分进行工作。

    以提高各 部件的利用率指令的平均执行速度

  • 图解
    在这里插入图片描述
    可以看到没有用流水线之前:按照取指、分析、执行、需要3秒才能够执行完一次指令

    使用了流水线之后:在第一条指令分析的时候,可以对第二条指令进行取指。在对第一条指令执行
    的时候可以对第二条指令进行分析,对第三条指令进行取指。

    这样交替进行,三条指令执行完成也才只需要5秒。提高了各个部件的利用率,也提高了指令的平均执行速度。

返回目录


流水线的计算
  • 说明

    流水线的计算一般就是流水线的周期、指令执行的时间等等的计算

  • 流水线的周期:

    流水线的周期就是 执行时间最为长的一段时间 就叫做流水线的周期

  • 流水线的计算公式:

      	理论公式 : 1 条指令执行的时间 +(指令条数-1)* 流水线周期  
    
       (t1+t2+...+tk)+ (n-1)*t
      
      	实践公式:k*t + (n-1)*t  
      	
      	(t为流水线周期,k为一条完成的指令所需要的步骤数)
    
  • 图解
    在这里插入图片描述对上面例题的解析:

      一条完整的指令执行完成需要 3+2+4 = 9s
      
      所以10条指令为90s
    
      流水线周期 ( 4s )
    
      所以十条周期执行完成为 9 + (10-1)*4 = 45s
    
      节省了一般的时间
    

返回目录


超标量流水线以及流水线吞吐率的计算
  • 说明

    超标量流水线实际上很简单。就是多条流水线的叠加,多条流水线一起工作。

  • 图解
    在这里插入图片描述
    这个表中的度为 2 .也就是有两条流水线。


流水线吞吐率的计算
  • 流水线的吞吐率:

    流水线的吞吐率是指 在 单位时间 内流水线所完成的 任务数量 或者 结果数量

  • 公式:

      TP = 指令条数 / 流水线执行的时间
    
  • 最大吞吐率的公式

      TP = 1/t  (t是流水线周期)
    
      也就是说最大吞吐率是流水线周期的倒数
    
  • 图解:
    在这里插入图片描述

返回目录


层次化存储结构
  • 图解
    在这里插入图片描述

    从图中可以看到。存储结构依次分为。

    CPU>Cache>主存(内存)>辅存(硬盘) 并且从上到下容量依次增大,但是访问的速度依次减小。

返回目录


Cache-高速缓存
  • 图解
    在这里插入图片描述值得注意的就是这个周期时间的计算,它涉及一个Cache中命中率的问题

      使用  Cache + 主存储器 的时间周期的计算 t3 = h * t1 +(1-h)* t2
    
      t3表示的是时间周期。 t1表示的Cache的周期时间 h 表示对Cache的访问命中率。t2 表示主存储器的周期时间 
    

返回目录


Cache–映像
  • 图解
    在这里插入图片描述
  • 直接相连映像
    在这里插入图片描述
  • 全相连映像
    在这里插入图片描述
  • 组相关联映像
    在这里插入图片描述组相关联映像就是将直接相连映像和全相连映像进行结合。各取优势。

返回目录


主存–编址与计算
  • 存储单元

    1. 字节 编址:

      存储体的存储单元是 字节存储单元,即 最小的寻址单元式一个字节

    2. 编址 :

      存储体的存储单元是 字存储单元, 即最小的寻址单元式一个字

    关于字节和字的进位关系:

      	1byte = 8 位(bit)
    

  • 计算

    存储的计算一般是计算总的容量、存储的芯片、和存储芯片的数量等等

      公式: 总片数 = 总容量/单个芯片的容量
    

返回目录


总线
  • 图解
    在这里插入图片描述

返回目录


串并联和串并联组合系统
  • 说明

    串并联和我们初中学的串并联其实差不多。这里只是要计算可靠度

  • 串联图解
    在这里插入图片描述

  • 并联图解
    在这里插入图片描述

  • 串并联组合图解
    在这里插入图片描述

  • 计算

    1. 串联系统的计算

      由于串联一个坏了的话整条线路就不能够畅通。所以可靠率为
      
      R = r1 * r2 * r3 * ....* rn   其实就是相当于进行求概率
      
    2. 并联系统的计算

       R = 1- (1-R1) * (1-r2) * (1-r3)  * ....* (1-rn)
      
    3. 组合联的计算

       组合联的计算也是比较简单的。什么联就按照什么联的进行计算就行
       公式都不是确定的,按照上面图片的计算就行
      

返回目录


校验码
  • 码距
    在这里插入图片描述

  • 奇偶校验码

    奇偶校验码就是说 在原来的数据上加上1 或者0 是它构成 奇校验 或者偶校验

    这样就可以知道数据的传输有没有出现错误了

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

    • 示例:

        例如传送的数据为:11001110 进行奇偶校验码传送的时候,如果我们要进行偶校验。
      
        那么传送的数据是11001110(1) 这样的话1的个数为偶数。
      
        在接收的时候如果1的个数为偶数的话,那就是对的(当然也有可能两个地方同时进行改变,导致还是偶数,但是几率一般较小)
      
        所以奇偶校验码只能够差错不能够进行矫正。
      

  • 循环校验码CRC

    循环校验码CRC就是说将要传送的数据,与一个多项式产生的k个数据为进行模2除法。

    然后将产生的r个校验码参与编码,放在后面。

    • 模2除法 在这里插入图片描述
    • 示例
      在这里插入图片描述操作就是这样的。将数据用模2的除法 除以多项式所产生的编码。然后放在数据的后面。构成新的得编码进行传送。这样就可以查错了。

  • 海明码

    海明码比较复杂,我们一般不会考的。

返回目录


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值