计算机硬件技术基础第一章总结

1.1 计算机发展概述

计算机硬件技术基础第一章总结

1.1.1 计算机的发展简史

第一台计算机:ENIAC

第一代:电子管数字计算机(1946-1958)

  • 逻辑元件:真空电子管
  • 体积大,功耗高,可靠性差速度慢,维护困难,价格昂贵,应用领域以军事和科学计算为主

第二代:晶体管数字计算机(1958-1964)

  • 逻辑元件:晶体管
  • 性能有所提高,开始应用于数据处理

第三代:集成电路数字计算机(1964-1970)

  • 逻辑元件:中小规模集成电路(MSI,SSI)
  • 速度更快,可靠性更高,产品走向通用化,系列化和标准化,应用领域开始进入文字处理和图形图像处理

第四代:大规模集成电路计算机(1974至今)

  • 逻辑元件:大规模,超大规模集成电路(LSI,VLSI)

1971年世界上第一台微处理器在美国硅谷诞生,开创了微型计算机的新时代。

1.1.2 计算机的主要应用

  1. 科学计算
  2. 计算机控制
  3. 测量和测试
  4. 信息处理
  5. 计算机辅助设计/计算机辅助制造/计算机辅助教学
  6. 人工智能
  7. 计算机模拟
  8. 多媒体应用

1.2 微型计算机概述

1.2.1 微型计算机的发展阶段

  • 根据微处理器的字长和功能划分

第一阶段(1971-1973)

  • 4位和8位低档位处理器时代
  • Intel4004,Intel8008以及七组成的MCS-4和MCS-8微机

第二阶段(1971-1977)

  • 8位中、高档微处理器时代
  • Intel8080/8085、Motorola公司的M6800和Zilog公司的Z80

第三阶段(1978-1984)

  • 16位微处理器时代
  • Intel8086/8088、Motorola公司的M68000和Zilog公司的Z8000

第四阶段(1985-1992)

  • 32位微处理器时代
  • Intel80386/80486、Motorola公司的M69030/68040等

第五阶段(1993-2005)

  • 奔腾(Pentium)系列微处理器时代
  • Intel奔腾系列芯片以及与之兼容的AMD的K6系列微处理器芯片

第六阶段(2005至今)

  • 酷睿(Core)系列微处理器时代

1.2.2 微处理器的发展

  • 摩尔定律
  • Intel合作伙伴高登·摩尔于1965年提出
  • 计算机硬件技术基础第一章总结

1.2.3影响计算机性能设计的因素

  1. CPU的速度
  2. 性能平衡
  3. 芯片组成和体系结构的改进

为提升计算机性能已经采取的主要策略如下

  1. 提高处理器芯片硬件的速度(减小逻辑门尺寸,提升时钟频率)
  2. 提升处理器芯片内部高速缓存的容量与速度,显著降低CPU对cache的存取时间
  3. 改进处理器的组成和体系结构,更加重视处理器的流水化与超标量化设计,以提高指令执行的有效速度

1.3 微型计算机系统的组成

1. 硬件系统

  1. 主机
  2. 输入设备

2. 软件系统

  1. 系统程序类
  2. 媒体工具类
  3. 硬件驱动类
  4. 网络工具类
  5. 管理软件类
  6. 安全类

1.4 微机硬件系统结构基础

  • 各种计算机都是由微处理器CPU(包含运算器和控制器),存储器(RAM,ROM),输入输出折别(I/O外设及其接口)

1.4.1 总线结构介绍

  • 微型计算机从其诞生以来就采用了总线结构
  • 单总线结构

计算机硬件技术基础第一章总结

  • 双总线结构

计算机硬件技术基础第一章总结

  • 双重总线结构

计算机硬件技术基础第一章总结

  • 总线有多种分类方式
  1. 传送信息类别:地址总线,数据总线和控制总线
  2. 传送信息方向:单向总线和双向总线.地址总线属于单向总线,方向总是从CPU或其他总线主控设备发往其他设备;数据总线属于双向总线;控制总线属于混合型总线,控制总线中的每一根总线都是单向的,而各种控制线的方向有进有出
  3. 层次结构:CPU总线,存储总线,系统总线和外部总线

1.4.2 微处理器模型的组成

  1. 运算器(算术逻辑单元)
  2. 控制器(可编程逻辑阵列PLA)
  • 指令寄存器
  • 指令译码器
  • 可编程逻辑阵列
  1. 内部寄存器
  • 累加器A
  • 数据寄存器DR
  • 程序计数器PC
  • 地址寄存器AR
  • 标志寄存器F

1.4.3 存储器概述

  • 2¹⁶B=64KB,2²⁰B=1024KB,2³²B=4GB
  1. 存储器组成

计算机硬件技术基础第一章总结

  1. 读写操作过程

计算机硬件技术基础第一章总结

1.4.4 输入输出(I/O)接口简介

  1. 通常接口会有以下功能
  • 设置数据的寄存,缓冲逻辑,以适应CPU与外设之间的速度差异
  • 进行信息格式的转换
  • 协调CPU和外设在信息的类型和电平的差异
  • 协调时序差异
  • 地址译码和设备选择功能
  • 设置中断和DMA控制逻辑,以保证在中断和DMA允许的情况下产生中断和DMA请求信号,并在接收到中断和DMA应答之后完成中断处理和DMA传输

1.5 微机的工作原理与程序执行过程

计算机硬件技术基础第一章总结

1.6 计算机的运算基础

1.6.1 二进制数的计算

1. 二进制数的算术计算

  • 二进制加法
    计算机硬件技术基础第一章总结
  • 二进制减法
    计算机硬件技术基础第一章总结
  • 二进制乘法(移位乘法)
    计算机硬件技术基础第一章总结
    计算机硬件技术基础第一章总结
  • 二进制除法
    计算机硬件技术基础第一章总结

2. 二进制的逻辑运算

计算机硬件技术基础第一章总结

1.6.2 数制转换综合表示法

计算机硬件技术基础第一章总结
计算机硬件技术基础第一章总结
计算机硬件技术基础第一章总结
计算机硬件技术基础第一章总结
计算机硬件技术基础第一章总结

1.6.3 二进制编码(代码)

  1. BCD码
  • 用4位二进制数来表示十进制数中的0~9这十个数码的编码形式,简称为BCD码。
十进制数 BCD码
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
  1. 字符与字母的编码
  • 7位ASCII码表
    计算机硬件技术基础第一章总结

1.6.4 数的顶点和浮点表示

  • 定点表示:又称整数表示,小数点在数中的位置是固定不变的
  • 浮点表示:又称实数表示,小数点在数中的位置是浮动的
  • 对于任意一个二进制数N,可用N=S*2P表示,其中S为尾数,P为阶码,2为阶码的底,P、S都用二进制数表示,S表示N的全部有效数字,P指明小数点 的位置,当阶码为固定值时,数的这种表示法称为定点表示,这样的数称为定点数;当阶码为可变时,数的这种表示法称为浮点表示,这样的数称为浮点数
  • 通常定点数有两种表示法,均设P=0,小数点是隐含的,若数值部分为n位:当S为纯整数时,此时定点数只能表示整数);当S为纯小数时,此时定点数只能表示小数
    计算机硬件技术基础第一章总结
    计算机硬件技术基础第一章总结

1.6.5带符号数的表示法

1. 机器数与真值

  • 计算机中的二进制数有无符号数与有符号数之分.之前所讨论的都是指无符号数,带符号的二进制数,是将数学上的+和-符号数字化,规定1个字节中的D₇位为符号位D₀~D₆为数值位.例如

N₁=01011011=+91D
N₂=11011011=-91D

2. 机器数的种类和表示方法

  • 原码,反码和补码
(1) 原码
  • 原码表示方法:符号位用0表示正,用1表示负;其余数字位表示数值本身此机器数的数值部分为真值的绝对值

[+41]原=0 0101001
[-41]原=1 0101001

  • 对于0,可以认为他是(+0),也可以认为他是(-0)

[+0]原=0 0000000
[-0]原=1 0000000

  • 8位二进制原码可表示的数的范围为-127 ~ +127.16位二进制数原码所能表示的有符号数的范围为-32767~ +32767.n位二进制数原码可表示的有符号数的范围为-2^(n-1)-1 ~ +2 ^(n-1)-1
  • 采用原码表示简单易懂,而且与真值的转换很方便,但是采用原码表示时在计算机中进行加减运算很麻烦,因此使用原码设计的计算机电路结构将会非常复杂,由此产生了反码和补码
(2) 反码
  • 反码的表示方法:正数的反码和其原码相同,其符号位用0表示正,数值位为真值的绝对值.负数的反码其符号位用1表示负,数值部分为真值绝对值按位取反

[+41]反=0 0101001
[-41]反=1 1010110

  • 0的反码有两种表示方法

[+0]反=0 0000000
[-0]反=1 1111111

  • 8位二进制反码可以表示的数值范围为-127~ +127.n位反码可以表示的数值范围为-2 ^ (n-1)-1~+2^(n-1)-1

(3) 补码

  • 微机中通常是用补码表示有符号数,因为采用补码之后,同一加法电路既可以用于有符号数相加,也可以用于无符号数相加,而且减法可用加法来代替,从而使运算逻辑大为简化
  • 补码的表示方法:正数的补码与其原码相同,即符号位用0表示正,数值部分为真值的绝对值.复数的补码为它的反码加一(即在其最低位加1)

[+41]补=0 0101001
[-41]补=1 1010111

  • 0的补码只有一个

[+0]补=[-0]补=0 0000000
[+127]补=0 1111111
[-128]补=1 0000000

  • 8位二进制补码所能表示的数值范围为-128 ~ +127
  • 补码求真值时,要先将数值位取反,然后再在最低位+1

1.6.6 补码的加减法运算

计算机硬件技术基础第一章总结

1.6.7 溢出及其判断方法

1. 什么叫溢出

  • 溢出是指在进行补码运算时候,运算结果超出了补码的最大范围

例如:X=01000000(+64),Y=01000001(+65) 相加得到的结果为10000001(-127的补码),显然X和Y都是正数,所以得到的结果是错的.同理10000001和11111110相加的结果也是错的

  • 两个不同符号数相加得到的结果无论如何都不会溢出

2. 如何判断溢出

  1. 写出结果,直接根据操作数判断(显然不太方便)
  2. 利用双进位的状态

利用判别式 V = D7c⊕ D6c

  • D7c表示两个符号位D7相加产生的进位,D6c表示两数值部分最高位D6相加产生的进位,若V = 1,则表示有溢出

3. 溢出与进位

  • 进位是指运算结果的最高位向更高位的进位,如有进位,则Cy=1;当Cy=1时,即D7c=1时,若D6c=1则V=0,表示无溢出,其他结果类似.可见进位和溢出十来个个不同的概念
  • 对于16位二进制数,双进位式为:
    V = D15c⊕ D14c