一、计算机硬件基础

数的转换

其它进制转十进制

二进制 → 十进制

10100.01 = 1✖24+1✖22+1✖2-2

八进制 → 十进制

604.01 = 6✖82+4✖80+1✖8-2

十进制转其它进制

使用短除法:

94(十进制)→  1011110(二进制)

                      余数      

2 |   94    ------0
2 |   47    ------1     ↑
2 |   23    ------1     | 由
2 |   11    ------1     | 下
2 |    5     ------1     | 往
2 |    2     ------0     | 上
        1     ------1     | 写

二进制与八进制互相转换

10001110(二进制),头部缺位的补齐。010001110 → 010 001 110

010 001 110
  ↓   ↓   
 2      1     6

二进制与十六进制互相转换

10001110(二进制)

1000 1110
           
  8        E

存储相关基础概念

地址:整个内存被分成若干个存储单元,为了有效存取该单元内存储的内容,每个单元必须有唯一的编号(称为地址)来标识

位(bit):存放一位二进制的数即0或1称为位(简写为b)

字节:8个二进制为一个字节(简写为B)

1B=8 bit
1KB=210 B=1024 B
1MB=210 KB=220 B=1024*1024 B
1GB=210 MB=230 B=1024*1024*1024 B

数的表示

码制:第一位数为符号位,第一个数为0是表示正数,第一个数为1时表示负数。(原码、反码、补码、移码)

反码:数值为正数时,反码和原码一样,数值为负数时,反码第一个数不变(即为1),其余数相反。

补码:数值为正数时,反码和补码一样,数值为负数时,补码在反码后加1。常用于加减法运算。

移码:无论正负,在补码的基础上符号位取反,其它的不变。常用于浮点数的阶码。

  整数取值范围 数值1   数值-1 1+(-1)
原码 -(2n-1-1)~2n-1-1 0000 0001 1000 0001  1000 0010
反码 -(2n-1-1)~2n-1-1 0000 0001 1111 1110  1111 1111
补码 -2n-1~2n-1-1 0000 0001 1111 1111  0000 0000
移码 -2n-1~2n-1-1 0000 0001 0111 1111  1000 0000

定点数和浮点数

定点数:小数点的位置固定不变的数,小数点不需要占用一位二进制

定点整数:默认在最后,不需要体现。(0000 1111•)

定点小数:默认在符号位后面,不需要体现(1•000 1111)

浮点数:N= M * Re ,其中M为尾数,e为指数,R为基数

由于是二进制,因此R不需要存储,只需保存M和e即可

计算机的基本组成

冯诺依曼体系:计算机由输入设备、运算器、控制器、存储器、输出设备

中央处理器(CPU):运算器和控制器。或者运算器、控制器、寄存器组和内部总线。

主机:中央处理器+主存储器(内存)

运算器   控制器
算术逻辑单元ALU 进行算术运算和逻辑运算 程序计数器PC 存放下一条执行指令的地址
累加寄存器 存放当前一个运算的结果 指令寄存器IR 存放当前执行指令的地址
数据缓冲寄存器 保存操作数和操作结果 指令译码器 对指令进行翻译,以便计算机能够运行
状态条件寄存器 存放运算状态 时序部件 工作频率的控制

并行处理

并行性:并发性、同时性

提高并行性方法:时间重叠(流水线)、资源重复、资源共享

基本概念

CPU的性能指标:主频、字长、CPU缓存、核心数量
总线的分类:数据总线、控制总线、地址总线
总线的性能指标:宽带、位宽、工作频率
设备间的连接方式:串行连接、并行连接

指令:一条指令就是机器语言的一个语句,是一组有意义的二进制代码。指令由操作码字段和地址码字段组成

指令组成 操作码字段 地址码字段
功能说明 指出了计算机要执行什么性质的操作 包含各操作数的地址及操作结果的存放地址等

寻址方式

立即寻址方式:操作数就在指令内,因此,也叫做立即数,采用补码的形式存放,在执行阶段不访问内存,但是指令的位数是有限的,这也就限制了立即数的范围。
直接寻址方式:指令字中的形式地址A就是操作数的有效地址EA,即 EA=A,从指令中可以直接的得到操作数的有效地址,且只访问内存一次
间接寻址方式:操作数的有效地址是由指令字中的形式地址给出的,也就是指令字中给出的是真实地址的地址,即EA=(A)
寄存器寻址方式:指令字中的内容是寄存器的编号,操作数在指定编号的寄存器里
寄存器间接寻址方式:指定寄存器编号,但是寄存器内存放的并不是操作数,而是操作数的有效地址(有点像间接寻址,只是访问的对象不一样)。

相对寻址方式:与后面的基址和变址类似,进行加1,减1获取相关指令
基址寻址方式:
变址寻址方式:

https://blog.csdn.net/lixiaoting9181/article/details/109846970

计算机体系结构分类-Flynn

计算机的基本工作过程是执行一串指令,对一组数据过行处理。通常,把计算机执行的指令序列称为“指令流”,指令流调用的数据序列称为“数据流”,把计算机同时可处理多个指令或数据的特性称为“多重性”。

根据指令流和数据流的多重性可将计算机系统分为下列4类(S-single,单一的;I-instruction,指令;M-multiple,多倍的;D-data,数据)
单指令流单数据流(SISD)
单指令流多数据流(SIMD)
多指令流单数据流(MISD)
多指令流多数据流(MIMD)

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

注:阵列式计算机,由多台处理机组成,每台处理机执行相同的程序,是操作并行的SIMD计算机。

多处理机系统,是由多台处理机组成的系统,每台处理机有属于自己的控制部件,可以执行独立的程序,共亨一个主存储器和所有的外部设备。

CISC与RISC

CISC:复杂指令集计算机,Complex Instruction Set Computer

RISC:简化指令集计算机,Reduced Instruction Set Computer

  CISC(复杂) RISC(精简)
指令 数量多
使用频奉差别大
可变长格式
数量少
使用频率接近
定长格式
大部分为单周期指令
操作寄存器
只有Load/Store操作内存
寻址方式 支持多种 支持方式少
实现方式 微程序控制技术 增加了通用寄存器
硬布线逻辑控制为主
采用流水线
其他   优化编译,有效支持高级语言

流水线

流水线:多条指令重叠进行操作的一种准并行处理实现技术

                                   

流水线周期:取取指、分析、执行中最大的值。(若取指2ns,分析2ns,执行1ns。则流水线周期为2ns。)

计算公式:n条执行执行完毕的时间:单条指令所需时间+(n-1)* 流水线周期

多级存储器结构

                   

存储器分类

顺序存取 无地址 磁带

按寻址方式

直接存取 有地址,与位置有关 硬盘、软盘、光盘
随机存取 有地址,与位置无关 内存、U盘
相联存取 按内容存取 Cache 按内容访问

存储器

ROM(只读存储器):Read-Only Memory,类似BIOS,无需供电,内容不能更改

RAM(随机存储器):Random Access Memory
  断电后信息无法保持
  可读可写
  分类
    SRAM:静态,不需要刷新
      在不断电情况下信息能够一直保持而不会丢失
      速度快,容量小,价格高
    DRAM:动态,定时刷新
      信息回随时间逐渐消失,因此需要定时对其进行刷新来维持
      密度大、价格使宜

虚拟存储器:在外存中获取一部分空间存储内存中的内容,扩大了内存的寻址空间

Cache:高速缓冲存储器

功能:提高CPU数据输入输出的速率,突破所谓的“冯·诺依曼瓶颈”,合理的成本下提高命中率
速度:在计算机的存储系统体系中,Cache是访问速度较快的层次
原理:使用Cache改善系统性能的依据是程序的局部性原理
组成:Cache由两部分组成:控制部分和Cache存储器部分

输入输出

微机最常用的内存与接口的编址方式:内存与接口地址独立编址、接口地址统一编址
直接程序控制:无条件传送方式、程序查询方式
中断方式:中断响应时间(关中断的最长时间 + 保护CPU内部寄存器的时间 + 进入中断服务函数的执行时间 + 开始执行中断服务程序的第一条指令时间);中断向量(地址存放一条跳转到中断服务程序的跳转指令)
直接存储器存取方式(DMA):在传送数据块的过程中不需要CPU干涉
输入输出处理机(IOP):

校验码

什么是检错和纠错?

什么是码距?

一个编码系统的码距就是整个编码系统中任意(所有)两个码字的最小距离

例:

若用1位长度的二进制编码。若A=1,B=0。这样A,B之间的最小码距为1
若用2位长度的二进制编码,若以A=11,B=00为例,A、B之间的最小码距为2
若用3位长度的二进制编码,可选用111,000作为合法编码。A,B之间的最小码距为3

奇偶校验码:仅可检错,可检测1(奇数)位错。通过在编码中增加一位校验位(0或1)来使编码中的1的个数为奇数(奇校验,使1的个数为1数)或偶数(偶校验,使1的个数为偶数)

CRC(循环冗余码):仅可检错,可检测多位错。利用生成多项式k个数据位产生r个校验位来进行编码,其编码长度为 k+r

海明校验码:可检错,且可纠错,纠1位错或多位错。在数据位之间插入k个校验位,通过扩大码距来实现检查和纠错;设数据位是n位,校验码是k位,则n和k必须满足以下关系:2k-1≥n+k

posted @ 2022-07-06 15:44  至愚至昧之童蒙  阅读(116)  评论(0编辑  收藏  举报