计算机系统初识计算机

计算机是一种用于高速计算的机器,既可以进行数值运算,又可以进行逻辑运算,还具有存储记忆功能.

计算机的功能

计算机就是能够执行计算的机器,也是能够根据一系列指令处理数据的机器.

数据是对事实、概念或指令的一种表达形式,其形式可以是数字文字图像声音等.

计算机的主要功能:

  1. 数据存储
  2. 数据处理
  3. 数据的输入输出

计算机的发展原始工具

算盘

  1. 辅助人类完成手动运算的工具
  2. 运算不仅仅基于10进制,早期一些基于16进制

机械计算机

帕斯卡加法器

  1. 实现了自动计算
  2. 五个齿轮——表示五位10进制数
  3. 运算时,从高位向低位依次拨下第二个数对应位的数,内部机械结构自动完成进位

莱布尼兹机械乘法

  1. 灵巧性有很大进步
  2. 几乎每一步运算都需要人工干预,没有突破手工操作的局限

查尔斯·巴贝奇分析机(差分机)

  1. 当时未完成
  2. 提花织布机、八音盒利用打孔卡片实现类似现代技术的“解码”,体现了可编程思想,分析机也是如此

电子计算机

赫尔曼 第一台电动计算机

  1. 穿孔卡片+弱电流技术
  2. 用与人口普查

马可一号

  1. 全继电器
  2. 体积很大
  3. 速度很慢但精度不高

ENIAC(电子数字积分计算机)

  1. 第一台计算机
  2. 电子管
  3. 当时性能非常优秀,但体积巨大且耗电严重,存储量小且麻烦(导致运算时准备时间过长)

晶体管

  1. 贝尔实验室发明
  2. 非常好用,解决了当时的大量问题(小、便宜、耗电小、可靠)

集成电路

  1. 小面积上放置大量晶体管

超级计算机(巨型机)

  1. 衡量经济实力和科技水平的重要标志

计算机划代(依据物理器件)

  1. 真空电子管(46~57)
    主要用于科学计算
  2. 晶体管(58~64)
    体积大大减小,为广泛应用创造了条件
  3. 集成电路(65~70)
  4. 微处理器大规模集成电路VLSI(97~今)

摩尔定律

当价格不变时,集成电路上可容纳的晶体管的数目,约每隔24个月便会增加一倍(后修订为18个月)

其他版本:

  • 芯片集成的电路数目翻一番
  • 微处理器性能提高一倍,或价格下降一半
  • 同美元电脑性能翻一番(经济学摩尔定律)

目前摩尔定律即将终结,因为集成度已难以提升

未来计算机

(以下均处于研发过程中,暂未发展为通用计算机)

量子计算机

遵循量子力学规律


生物计算机

利用蛋白质有开关的特性


光子计算机

光信号进行操作

计算机系统的构成

(此处缺图)

计算机硬件系统主板

计算机硬件的核心载体

主板上最重要的构成组件是芯片组:

  • 北桥芯片 CPU和内存数据交互
  • 南桥芯片 连接外设与主机

CPU(中央处理器)

计算机的大脑中央核心部分

提供运算的功能

主要由运算器控制器寄存器组组成

存储器

计算机的记忆装置

用于保存信息存储数据

按用途分为主存储器(内存)辅助存储器(外存)

内存主要分为ROMRAMCache:

ROM

只读存储器

电源中断后信息不会消失或受到破坏

常用来存放重要的、经常用到的程序和数据(监控程序)


RAM

随机存储器

用于暂时存储程序、数据和中间结果


Cache

高速缓冲存储器

用于缓和CPU内存速度不匹配


外存通常是磁性介质或光盘介质,包括:

硬盘

由涂有磁性材料的铝合金圆盘组成


固态盘

采用电路存储


U盘


软盘

已被淘汰


磁带

PC机一般不用


光盘

即将被淘汰

输入设备

用于把原始数据和处理这些数据的程序输入计算机

输出设备

计算机硬件系统的终端设备,将处理结果返回给外部

电源

提供能量的核心

总线

计算机系统各部件之间传输地址、数据和控制信息的通道

一组导线和相关控制、驱动电路的集合

分类:

  • CPU总线
  • 系统总线
  • 外设总线
  • USB总线

计算机软件系统

计算机软件是指能指挥计算机工作的程序与程序运行时所需要的数据,以及与这些程序和数据有关的文字说明图表资料的总和,是一种逻辑实体

计算机程序是指为了得到某种结果可由计算机等具有信息处理能力的装置执行的代码化的指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列(或符号化语句序列)

系统软件

管理、监控和维护计算机硬件资源,扩充计算机功能,提高计算机效率的各种程序

操作系统是一个管理计算机硬件和软件资源的程序,同时也是计算机系统的内核基石

功能:

  1. 程序管理
  2. 文件管理
  3. 存储管理
  4. 设备管理

应用软件

专门为某个应用目的而编制的软件,以提供某种特定的功能

软件发展

早期

面向批处理

有限的分布

自定义软件


第二阶段

多用户

实时

数据库

软件产品


第三阶段

分布式系统

嵌入”智能”

低成本硬件

消费者影响


第四阶段

强大的桌面系统

面向对象技术

专家系统

人工神经网络

并行计算

网络计算机

软件危机

成本和进度估计不准确

用户不满意

Bug一大堆,Patch一个接一个

可维护性非常低

没有适当文档

成本不断提高

生产率的提高赶不上硬件发展和人们需求增长


解决途径 —— 软件工程:

应用计算机科学数学以及管理科学等原理,以工程化的原则和方法制作软件的工程

软件生命周期

  1. 问题定义
  2. 可行性研究
  3. 需求分析
  4. 总体设计
  5. 详细设计
  6. 编码和单元测试
  7. 综合测试
  8. 软件维护

计算机的工作原理

现代计算机的模型源于图灵机

图灵机

一种抽象计算模型,将人们使用纸笔进行的数学运算的过程进行抽象,由一个虚拟的机器代替人们进行数学运算

一个按照确定、有限的规则和步骤,将输入信息经过变换后给出输出信息,并在遇到停止状态时就结束工作的系统

计算的本质是符号变换:

  • 从一个符号串f经过一定的规则变换成另一个符号串g
  • 按确定的、有限的规则和步骤(算法),将输入转换为输出的过程

图灵从理论上证明了通用计算机存在的可能性,奠定了通用计算机的理论基础

若干简单图灵机的合并可以构造出复杂的图灵机,人也可以抽象为图灵机模型

不是所有的问题都是可以计算的,任何不能被图灵机解决的问题(不能设计出算法)都是不可计算问题:

  • 在有限步骤内无法解决
  • 过于复杂而不能在可接受范围内解决

构成:

  • 无限长纸带TAPE
  • 读写头HEAD
  • 控制规则TABLE
  • 状态寄存器

要素:

  • 输入集合
  • 输出集合
  • 内部状态
  • 固定的程序

运作:

(依据状态转移表)

  1. 读取当前格
  2. 改写当前格(也可不写)
  3. 读写头位置变化(也可不变)
  4. 当前状态变化

工作条件:

  • 输入带符的集合
  • 内部状态的集合
  • 一组控制规则

表示:

{Q,Σ,δ,B,H}

  • Q:有穷个状态集合
  • Σ:输入符号的集合
  • δ:控制规则集合
  • B:初始状态,B∈Q
  • H:停机状态,当控制器内部状态为停机状态时,结束计算,H∈Q

现代计算机基本工作原理都是图灵机:

  • 存储器 —— 纸带
  • 运算器 —— 读写头
  • 程序 —— 规则

图灵机可以模拟计算机,但是计算机难以模拟图灵机

冯·诺依曼结构

针对硬件

现代计算机均为冯诺依曼计算机

要点:

  1. 二进制
  2. 顺序执行(存储程序控制原理)
  3. 五大模块

局限性:

  • CPU与存储器有大量的数据交互,造成总线瓶颈
  • 即使有关数据已经准备好,也必须逐条执行指令序列
  • 数据传输都要经过运算器,特别是非数值数据处理效率低

算术逻辑单元ALU(核心)

运算器

对数据进行处理和运算,执行指令

控制单元CU

控制器

实现指令的自动装入和自动执行

存储单元SU

储存器

包括内存外存

允许的指令和数据进入内存才能使用CPU

输入设备Input

键盘鼠标

输出设备Output

显示器打印机

总线BUS

信息通道

分类:

  • 数据总线Data
  • 地址总线Address
  • 控制信号总线Control signal

哈佛结构

冯诺依曼结构的改进,核心变为存储器

特点:

  • 指令和数据分别存在两个独立的存储器模块中
  • CPU与存储器间指令和数据传送分别采用两组独立的总线

计算机的启动

  1. 加电启动BIOS(自检计算机硬件能否满足运行的基本条件)
  2. 系统引导
  3. 操作系统启动

计算机的计算原理

计算机最本质的运算是数学运算

计算机的全部工作就是执行程序的过程

计算机能解题是因为存在机器语言,既能理解人的意图,又能被机器自身识别

机器语言是由一条条语句构成的,每条语句又能准确表达某种语义

计算机指令就是给计算机下达的命令,由操作码地址码两部分组成

通常把指示计算机进行某项工作的命令称为指令,而为完成某个任务的若干条指令的有序集合称为程序

这里是浙江理工大学22届ACM集训队的成员一枚鸭!

本文首发于博客园,作者:星双子,除了我自己的转载请注明原文链接:https://www.cnblogs.com/geministar/p/16932596.html