第3 章计算机系统 通过前2章的学习,我们知道计算思维就是像计算机科学家一样去思考,了解了各 种信息在计算机里是如何表示的,但仍然不了解计算机系统的内部情况。到底这么一 个机器,是怎么工作的? 又是由哪些软硬件的相互配合,才能顺利完成我们指派给它 的各种复杂的计算任务呢? 本章主要是探究复杂而精密的计算机是如何构成并运 作的。 3.1 计算机系统概述 3.1.1 计算机的体系结构 现代计算机,虽然从性能指标、运算速度、价格等方面已经发生了很大改变,但是基本 结构没有变化,都是基于图3.1所示的冯·诺依曼体系结构。该结构的核心是:存储程 序、程序控制。即将编写好的程序和原始数据输入并存储在计算机的主存储器中(即“存 储程序”)。计算机按照程序逐条取出指令,加以分析,并执行指令规定的操作(即“程序 控制”)。 图3.1 冯·诺依曼体系结构 冯·诺依曼体系结构有以下特点。 (1)计算机处理的数据和指令都是用二进制数表示。 (2)所有指令和数据无差别混合存储在同一个存储器中。 (3)严格按照顺序执行程序的每一条指令,但可因运算结果或外界条件而改变顺序。 (4)计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部件组成。 数据在五大部件间传输需要有传输总线,总线内传输的信息可以分为数据流和控制 流,如图3.虚线为控制流。计算机输入、 1所示。图中实线为数据流, 输出设备的数据都 存储在存储器里,在运算过程中,控制器控制数据从存储器转移到运算器进行运算,运算 的中间结果或最终数据结果保存于存储器中,最后由输出设备输出。控制器是发布命令 的“决策机构”,完成协调和指挥整个计算机系统的操作。 下面简要介绍五大部件在计算机工作过程中的作用。 1.运算器 运算器是整个计算机系统的运算中心,执行当前指令所规定的算术运算、逻辑运算、 关系运算。它主要包括算术逻辑运算单元(ArithmeticLogicUnit,ALU )、累加器、寄存 器组等。控制器控制运算器不断地从存储器中取出待加工的数据,对其进行加、减、乘、除 及各种逻辑运算,并将处理后的结果送回存储器或暂时保存在存储器中。运算器与控制 器共同组成了中央处理器(CentralProcesingUnit,CPU)的核心部分。 2.控制器 控制器是整个计算机系统的指挥中心,控制着计算机逐条执行指令,并控制着计算 机中各部件有条不紊地工作。执行程序时,控制器先从存储器中按照特定的顺序取出 指令,解释该指令并取出相关的数据,然后向其他部件发出执行该指令所需要的时序 控制信号,再执行指令,最后从存储器中取出下一条指令执行,依次循环,直至程序执 行结束。 3.存储器 存储器是整个计算机系统的记忆单元,主要用于存储程序和数据。也就是根据控制 器命令,在指定位置存入或取出二进制信息。计算机中的存储器,按功能可分为主存储器 和辅助存储器两大类。 4.输入设备 输入设备是整个计算机系统的信息入口。它能将外部的数据、程序信息转换为计算 机可以识别和处理的二进制信息形式,并且传输进计算机系统中。 5.输出设备 输出设备是整个计算机系统的信息出口。它能将计算机处理的结果变换为用户需要 的信息形式,并且输出到显示器或者其他外设上。 第 3 章计算机系统 74 1.计算机系统的组成 3.2 一个完整的计算机系统由硬件系统和软件系统两部分组成,硬件就好像我们的身体, 软件就如同我们的神经和思想。 硬件系统是各种物理部件的有机组合,是计算机工作的物理基础。它主要由中央处 理器、存储器、主板、总线和接口、输入输出控制系统和各种外部设备组成。 软件系统是各种程序、数据和文档的集合。软件包括系统软件和应用软件两部分。 其中系统软件包括操作系统、语言处理程序、数据库管理系统和系统支撑和服务程序。应 用软件包括通用应用软件和定制应用软件。 硬件和软件是相互依存,缺一不可的。硬件是软件工作的平台,离开硬件,软件没有 施展能力的环境;软件丰富了硬件功能,有了软件的支持,硬件功能才能得到充分的发挥。 没有安装任何软件的计算机通常称为“裸机”,裸机是无法工作的。 3.计算机的硬件系统 2 我们日常使用的计算机称为微型计算机系统,也称“、2所 微机”个人计算机等。图3. 示为微机的硬件结构图,通常分为主机和外设两部分。主机包括微机主板上安装的中央 处理器、主存储器、总线、输入输出控制器等部件。外设包括输入设备、输出设备和辅助存 储器。打开主机机箱盖板后,即可以看到主板、CPU 、内存储器、电源、硬盘、光盘驱动器、 显卡、网卡等一系列硬件设备。主机和外设通过系统总线进行连接,传输信息。 图3.2 微机的硬件结构图 3.2.1中央处理器 中央处理器(CPU)是由控制器和运算器组成的计算机核心部分。它负责解释指令 的功能,控制各类指令的执行过程,完成各种算术和逻辑运算。中央处理器的作用很像人 84 计算思维与Python 编程基础(微课版) 的大脑,其主要功能是从主存储器中取出指令,经译码后发出取数、执行、存数等控制命 令,以保证正确完成程序所要求的功能。CPU 芯片一般由一片或少数几片大规模集成电 路组成,又称微处理器,3所示。 如图3. 图3. 3CPU 1.CPU 的主要功能 (1)指令控制:程序是一个指令序列,这些指令的顺序不能任意颠倒,必须严格按程 序规定的顺序进行。 (2)操作控制:CPU 管理并产生由主存储器取出的每条指令的操作信号,把各种操 作信号送往相应部件,从而控制这些部件按指令的要求动作。 (3)时间控制:对操作信号实施时间上的限定,严格控制时间,保证有条不紊。 (4)数据处理:对数据进行算术运算和逻辑运算处理以及其他非数值数据(如字符、 字符串)的处理。 2.CPU 的主要工作流程 (1)取指令:按照程序规定的次序,从主存储器取出当前执行的指令,并送到控制器 的指令寄存器中。 (2)指令译码:指令寄存器中的指令经过译码,决定该指令应进行何种操作(就是指 令里的操作码)、操作数在哪里(操作数的地址)。 (3)执行指令,分两个阶段,即“取操作数”和“进行运算”。 (4)修改指令计数器,决定下一条指令的地址。 3.CPU 的主要性能指标 CPU 是整个微机系统的核心,它的性能大致也就反映出配套微机的性能,下面仅介 绍几个主要的性能指标。 1)字长 字长是指单位时间能同时处理的二进制的位数,常见的有32 位、64 位。字长越长, 计算精度越高,处理能力越强。 2)主频、睿频、外频、倍频 主频也就是CPU 的时钟频率,简单地说就是CPU 运算时的工作频率。一般说来, 主频越高,一个时钟周期里面完成的指令数也越多,当然CPU 的运算速度也就越快。各 种各样CPU 的内部结构不尽相同,所以时钟频率相同的CPU 的性能可能不一样。 睿频是一项CPU 自动超频技术,指当启动一个运行程序后,处理器会自动加速到 第 3 章计算机系统 合适的频率,而原来的运行速度会自动提升,以保证程序流畅运行的一种技术。该技 术既提高了CPU日常运算的速度,又节能,目前已经在Corei9/i7/i5系列处理器中普遍 使用。 外频就是系统总线的工作频率;而倍频则是指CPU外频与主频相差的倍数。三者 的密切关系为:主频=外频×倍频。 3)缓存 内部缓存,即通常所说的一级缓存(L1cache),是与CPU共同封装于芯片内部的高 速缓冲存储器,是为了解决CPU与主存储器之间速度不匹配的问题而采用的一项重要 技术。 缓存的工作原理,是当CPU要读取一个数据时,首先从缓存中查找,如果找到,就立 即读取并送给CPU处理;否则,用相对慢的速度从主存储器中读取并送给CPU处理,同 时把这个数据所在的数据块调入缓存中,可以使得以后对整块数据的读取都从缓存中进 行,不必再调用主存储器。当然,现在很多CPU上还有二级缓存(L2cache)、三级缓存 (L3cache),其作用与一级缓存类似。 4)核心数 CPU的核心数是指相对独立的CPU核心单元组的数目。一般一个核心只能运行一 个线程,现在有了超线程技术,一个核心可以处理两个线程。 目前市面上主流的CPU有英特尔公司旗下的赛扬(Celeron)、中端酷睿(Core)、高端 至强(Xeon)和AMD旗下的锐龙、AMDFX 、APU 、速龙和闪龙系列等。 2.主存储器 3.2 主存储器又称主存、内存,用于存放指令和数据,是供中央处理器直接随机存取的存 储器。所有数据必须装入主存后才能被处理器操作。主存储器价格高,容量小,但是存取 速度快。 1.主存储器的分类 主存储器由称为存储器芯片的半导体集成电路组成,一般分为3种类型:随机存取 存储器(RandomAcesMemory,RAM )、只读存储器(Read-OnlyMemory,ROM)和高 速缓冲存储器(cache)。 1)RAM RAM就是通常所说的内存,其内容可按地址随时进行存取(读写)。RAM的主要特 点是数据存取速度快,但是掉电后数据就会丢失,RAM适用于临时存储数据。 RAM分为静态随机存取存储器(StaticRAM,SRAM)和动态随机存取存储器 (DynamicRAM,DRAM )。目前,微机中多采用DRAM作为主存储器,SRAM多用于 CPU中的cache。DRAM由若干存储单元组成,通过对每个单元的电容充电实现数据的 存储。由于电容有自然放电的特征,所以DRAM必须定期刷新,以保存数据,为此使用 DRAM时一定要有刷新电路。SRAM使用触发器逻辑门的原理来存储二进制数值,只 要维持供电,数据就能一直保存,不需要刷新电路。 05 计算思维与Python 编程基础(微课版) 双倍数据率同步动态随机存取存储器(DoubleDataRateSynchronousDynamic RandomAcesMemory,DDRSDRAM)是最常 见的主存储器,习惯称为DDR, 4所示。 如图3. 市面上通用的有DDR5 、DDR4等,数字4和5仅 仅是代数,代数越高,性能也就越好,价格也就相 对贵。目前,内存条常见的容量有4GB 、8GB 、 16GB等不同的规格。内存条必须插在主板中相 应的内存条插槽中才能使用。 2)ROM ROM是只读存储器,对一次性写入的内容, 在正常工作时只能读取,不能重新改写。如果需图3.4 DDR5内存条 要更改ROM中的数据,就要先用紫外线照射或 用电来擦除其中的数据,然后通过专门的设备重新写入新的数据。掉电后,ROM中的数 据也不会丢失。因此,基本输入输出系统(BasicInput/OutputSystem,BIOS)被固化在 只读存储器中。 ROM中的电擦除可编程ROM(Electricaly-ErasableProgrammableROM,EEPROM) 能按“位”擦写信息,但速度比较慢,容量不大。由于价格便宜,它在低端产品中用得较多。 快擦除存储器(FlashROM),又叫闪存,是EEPROM的改进产品,它能按字节为单位进 行删除和重写,而不是擦写整个芯片,速度快,容量大。 3)cache cache是一种高速小容量的临时存储器,集成在CPU的内部,存储CPU即将访问的 指令或数据。在计算机中,CPU的运算速度很快,而主存储器的存取速度相对较慢。为 了匹配两者的速度,在CPU和主存储器之间增加了cache,从而达到高速存取指令和数据 的目的。大容量的cache可以提高计算机的性能。 2.主存储器的主要技术指标 1)存储容量 主存储器含有大量存储单元,每个存储单元可存放8位二进制信息,内存容量反映了 内存存储数据的能力。常见的容量单位有KB 、MB 、GB和TB 。 存储容量越大,能处理的数据量就越大,整个系统的运算速度一般也越快。操作系统 和某些大型应用软件会对主存储器的存储容量有要求。 2)内存主频 内存主频表示内存的速度,代表内存的最高工作频率。内存主频是以MHz为单位 来计量的。内存主频越高,在一定程度上代表着内存的速度越快。 3)读/写时间 从存储器读一个字或者向存储器写入一个字所需的时间称为读/写时间。两次独立 的读/写操作之间所需的最短时间称为存储周期。内存的读/写时间反映了存储器的存取 速度。 第 3 章计算机系统 3.CPU 和存储器之间的关系 5所示。大量的数据和软件保存在辅助存储器中, CPU 和存储器之间的关系如图3. 执行程序时,在CPU 的控制下,辅助存储器中的程序和数据先载入主存储器中,由于 CPU 的运算速度快,而内存的访问速度慢,所以在计算机系统中引入与CPU 运算速度相 匹配的高速缓冲存储器。当CPU 要执行程序时,就在多个寄存器的配合下,从cache中 按顺序逐条取出指令,若该条指令不在cache中,就通过某种策略将部分程序从主存储器 中调入cache,并将当前不用的部分程序调出cache,CPU 再分析指令,执行指令,并自动 转入下一条指令,直到程序规定的任务完成。 图3. 5CPU 和存储器之间的关系 3.3 辅助存储器 2. 辅助存储器即外存储器,作为主存储器的辅助设备和必要补充,可以长期存放计算机 工作所需要的系统文件、应用程序、文档和数据等,它的容量大但是存取速度慢。比较常 见的外存储器如下。 1. 硬盘存储器 硬盘存储器是每台微机必备的外部存储设备。硬盘存储器的主要功能部件密封于一 个盒状装置内。硬盘存储容量大,存取速度较快。如图3.市面上常见的硬盘主要 6所示, 包括机械硬盘(HDD )、固态硬盘(SSD )、混合硬盘(HHD )。固态硬盘是近几年出现的一 种新型硬盘,运用Flash芯片技术。它功耗小,重量轻,不怕摔,而且可以适应极端温度或 湿度,但价格较高。 2. 移动存储器 容量大、方便携带和使用的移动存储器越来越符合用户的需求,常用的移动存储器有 U盘、闪存卡和移动硬盘。 U盘是一种Flash存储器,它通过USB 接口与计算机连接,即插即用。 闪存卡一般用作数码相机和手机的存储器,它需要通过相同接口的读卡器与计算机 相连,计算机才能进行读写。 移动硬盘通常由特制的硬盘盒构成,体积小,重量轻,存储容量大,可以达到几个太字 节,数据存储安全可靠。 计算思维与Python 编程基础(微课版) 图3. 6 固态硬盘 3. 光盘存储器 光盘存储器是一种利用激光技术存储信息的装置,具有成本低、体积小、容量大、易于 长期保存等优点,但是存取速度和数据传输率比硬盘低很多。 4. 云存储 云存储是一种网上在线存储模式,即把数据存放在由第三方托管的多台虚拟服务器, 而非专属的服务器上。随着数据量的增加,以及云存储存取数据的方便性,云存储应用越 来越多。 3.4 主板 2. 主板是微机系统中最大的一块集成电路板,微机通过主板将CPU 等各种器件和外 部设备有机地结合起来,形成完整的系统。微机正常运行时,对系统存储器设备和其他 I/O设备的操控都必须通过主板来完成。因此,微机的整体运行速度和稳定性在相当程 度上取决于主板的性能。图3. 7所示为一块主板的物理结构。主板上的主要部件包括控 制CPU 插座、内存插槽、总线扩展槽、控制芯片组、BIOS 芯片、各种外部设备接口等。 图3. 7 主板的物理结构 第 3 章计算机系统 35 1.CPU 插座 CPU 插座用于连接并固定CPU 芯片,由主板提供电源工作。不同的CPU 需选择与 之匹配的主板。 2. 内存插槽 内存插槽用于安装内存条,允许用户根据需要灵活地扩充内存容量。 3. 总线扩展槽 主板上有一系列扩展槽,用来连接显卡、声卡、网卡等。随着集成电路技术的发展和 计算机设计的进步,许多扩充卡(如声卡、网卡等)的功能都可以部分或全部集成在主 板上。 4.BIOS 和CMOS 基本输入输出系统(BasicInput/OutputSystem,BIOS)是存储在主板上的一块内存 芯片(ROM 或NvRAM)上的一组机器语言程序,包括了开机自检(PowerOnSelfTest, POST)和硬件自检程序、操作系统启动程序、CMOS 设置程序及硬件I/ O 和中断服务等 , 主要是为计算机提供最底层、最直接的硬件设置和控制。 互补金属氧化物半导体(ComplementaryMetalOxideSemiconductor,CMOS)是主 板上一块特殊的可读写的RAM 芯片,用于存放计算机的配置信息,包括内存容量、键盘 及显示器的类型、软盘和硬盘的容量及类型,以及当前日期和时间等。CMOS 存储器具 有易失性,因此需要电池供电,以保证计算机关机后不会丢失所存储的信息。 BIOS 中包含一个设置CMOSRAM 中参数的程序,这个设置CMOS 参数的过程习 惯上被称为“BIOS 设置”或“CMOS 设置”。更准确的说法其实是通过BIOS 设置程序对 CMOS 参数进行设置。 5. 芯片组 芯片组是微机各组成部分相互连接和通信的枢纽,由主板上两块超大规模集成电 路芯片构成,即北桥芯片和南桥芯片。芯片组控制和协调整个计算机系统的正常运 转,决定各个部件的选型,计算机系统的整体性能和功能在很大程度上由主板上的芯片 组决定。 北桥芯片通常在主板上靠近CPU 插座的位置,是存储控制中心,用于高速连接 CPU 、内存条、显卡,并与南桥芯片相互连接,起着主导性作用。南桥芯片通常在主板上 靠近PCI 总线插槽的位置,它是I/ O 控制中心,主要与PCI 总线插槽、USB 接口、硬盘接 口、音频编解码器、BIOS 和CMOS 存储器等连接,并通过SuperI/ O 芯片提供对键盘、鼠 标、串行口和并行口等的控制。 需要注意的是,不同的CPU 通常需要不同的芯片组。随着集成电路技术的发展 , CPU 芯片的组成越来越复杂,功能越来越强大。例如,近几年广泛使用的Corei5/i7/i9 CPU 芯片,有些已经将北桥芯片的存储器、控制器和图形处理器功能集成在CPU 芯片之 中,使用这些芯片的计算机,其主板上的北桥芯片已经消失,只需一块南桥芯片即可。 45 计算思维与Python 编程基础(微课版 ) 3.5 总线与接口 2. 1. 总线 总线就是各种信号线的集合,是计算机各部件之间传送数据、地址和控制信息的公共 通路。按功能划分,可以分为数据总线、地址总线、控制总线。常见的系统总线标准有 PCI 、PCI-E等。 总线的性能参数包括总线的带宽、总线的位宽、总线的工作时钟频率。其中最重要的 性能参数是它的数据传输速率,也称为总线带宽,即单位时间内总线上可传输的最大数据 量。总线带宽的计算公式如下。 总线带宽(MB/s)=(总线位宽/8)×总线工作频率(MHz)×传输次数 总线位宽是指总线能同时传送的二进制数据的位数,或数据总线的位数,即通常所说 的32 位、64 位等,其值越大,说明位宽越宽,总线每秒的数据传输率也越大。 总线工作频率以MHz 为单位,工作频率越高,则总线工作速度越快,总线带宽值也 就越大;传输次数是指每个时钟周期内的数据传输次数,一般为1。 2. 接口 接口是实现CPU 与外设设备、存储器的连接和数据交换的电路设备,前者称为I/O 接口,后者称为存储器接口。存储器接口电路简单,在CPU 的同步控制下工作,而I/O 设备品种繁多,其相应的电路接口也各不相同,例如串行接口、并行接口、USB 接口、PS/2 接口等。部分常用的I/O接口如图3.串行接口和并行接 8所示。在目前的品牌主板上, 口已不再作为标配提供,取而代之的是性能更高的USB 接口。USB 接口的主要优点是 速度快、连接简单快捷、支持多设备连接、即插即用等,已成为个人计算机领域最受欢迎的 总线接口标准之一。PS/2接口仅能用于连接键盘和鼠标(鼠标接口用绿色标识,键盘接 口用紫色标识)。 图3./O接口 8 部分常用I 第 3 章计算机系统 55 2.基本输入设备 3.6 输入设备是计算机与用户或其他设备通信的桥梁。它把原始数据和处理这些数据的 程序输入计算机中,把待输入信息转换成能被计算机处理的数据形式的设备。常见的输 入设备有键盘、鼠标、触摸屏、条形码或二维码扫描器、指纹识别器、图像扫描仪等。 1. 键盘 键盘是最常用也是最主要的输入设备。通过键盘可以将英文字母、数字、标点符号等 输入计算机中,从而向计算机发出命令,输入数据等。键盘由一组按阵列方式装配在一起 的按键开关组成,每按下一个键,相当于接通了相应的开关电路,该键的代码通过接口电 路送入计算机中。当快速大量输入字符时,就先将这些字符的代码送往内存的键盘缓冲 区,再从该缓冲区中取出,进行分析处理。键盘接口电路多采用单片微处理器,由它控制 整个键盘的工作,如上电时对键盘的自检、键盘扫描、按键代码的产生、发送及与主机的通 信等。键盘与主机连接的接口类型主要有PS/2、USB 两种。目前,利用蓝牙技术无线连 接到计算机的无线键盘,因其方便携带和简洁的特征,也越来越受欢迎。 2. 鼠标 鼠标是控制显示屏上光标指针移动并向计算机输入用户所选中的某个操作命令或操 作对象的一种常用输入设备。移动鼠标时,它把移动距离及方向的信息转换成脉冲,送到 计算机中,计算机再把脉冲转换成鼠标指针的坐标数据,从而达到指示位置的目的。常用 的鼠标有机械式和光电式两种。鼠标与主机连接的接口类型主要有PS/2、USB,还有越 来越受欢迎的无线鼠标。 3. 触摸屏 触摸屏是目前最简单、方便、自然的一种人机交互方式,广泛应用于便携式数字设备, 如智能手机、一体机、平板设备等。触摸屏由触摸检测部件和触摸屏控制器组成。触摸检 测部件安装在显示器屏幕前面,用于检测用户的触摸位置,并将其送到触摸屏控制器;而 触摸屏控制器的主要作用是接收触摸信息,并将它转换成触点坐标发送出去。 4. 扫描仪 扫描仪(Scanner)是一种高精度的光电一体化产品,可以将各种形式的内容转换成 图像信息输入计算机。图片、照片、胶片、各类图纸和文稿资料都可以用扫描仪输入到 计算机中,进而实现对这些图像信息的处理、存储、输出等。配合文字识别软件,扫描 仪还可以将扫描后的文稿转换成文本信息。目前,扫描仪已广泛应用于各类图形图像 处理、出版、印刷、广告制作、办公自动化、多媒体、图文数据库、图文通信、工程图纸输 入等众多领域。 3.7 基本输出设备 2. 输出设备是人与计算机交互的一种部件,用于数据的输出。输出设备把各种计算结 65 计算思维与Python 编程基础(微课版) 图3.9 迷你3D 打印机 果以数字、字符、图像、声音等形式表示出来。 1. 显示器 显示器是计算机最主要的输出设备,是人与计算机交流的主要渠道。显示器有两根 电缆线,一根是电源线,用于为显示器供电;另一根是信号线,与主机中的显示卡或图形加 速卡相连接,用于传输主机送来的信息。目前市面上显示器的种类有:阴极射线显示器 (CRT )、液晶显示器(LCD )、发光二极管显示器(LED )、等离子显示器(PDP )、电致发光显 示器(EL )、真空荧光显示器(VFD )。显示器的主要性能参数有显示器的分辨率、显示器 像素的颜色数目以及液晶显示器的响应时间。显示器和投影仪设备必须通过接口连接到 计算机的显卡上,才能将计算机的输出信息显示或投影到屏幕上。将计算机的数字信号 转换成模拟信号,让显示器显示出来,同时显卡还具有图像处理能力,可以协助CPU 工 作,提高整体的运行速度。 2. 打印机 打印机是计算机的输出设备之一,用于将计算机的处理结 果打印在相关介质上。衡量打印机好坏的指标有3项:打印 分辨率、打印速度和噪声。按照工作方式,打印机可分为点阵 打印机、针式打印机、喷墨式打印机、激光打印机等。目前,彩 色喷墨打印机和彩色激光打印机日趋成熟,成为主流打印机。 3D 打印技术是新型打印技术,它是一种先通过计算机建 模软件建模,再将建成的三维模型分区成逐层的截面,运用特 殊蜡材、粉末状金属或塑料等可黏合材料,通过逐层打印的方 法来制造三维物体的技术。图3. 机,可打印工艺品。 9所示为一种迷你3D 打印 3.计算机的软件系统 3 计算机软件是硬件与用户之间必不可少的接口。软件给了硬件丰富的补充,使用户 有了更完美的应用体验。一个完整的软件包含程序、数据和文档。程序向计算机硬件指 出应如何一步一步地进行规定的操作,数据是程序处理的对象,文档是软件设计报告、操 作使用说明和相关技术资料等。 3.1 指令和程序 3. 计算机指令就是指挥机器工作的指示和命令。程序是由一系列指令组成的,是为解 决某一问题而设计的一系列排列有序的指令的集合。 1. 指令 一条指令就是一步操作。人们用指令表达自己的意图,并交给处理器执行,控制器根 第 3 章计算机系统 据指令指挥计算机工作。通常一条指令包括两方面的内容:操作码和操作数。操作码规 定计算机进行何种操作,如取数、加、减、逻辑运算等。操作数指出参与操作的数据在存储 器的哪个地址中,操作的结果存放到哪个地址。整条指令以二进制编码的形式存放在存 储器中。CPU 得到一条指令以后,控制单元就解释这条指令,指挥其他部件完成这条 指令。 2. 程序 程序就是一组排列有序的指令集合。分析问题,找出解决问题的算法,并且用计算机 的指令或语句编写成可执行的程序,就称为程序设计。 3.2 程序设计语言 3. 程序设计语言主要经历了机器语言、汇编语言和高级语言三个阶段。 1. 机器语言 机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。 用机器语言编写程序,编程人员需要熟记所用计算机的全部指令代码和代码的含义,需要 自己处理每条指令和每一个数据的存储分配和输入输出,需要记住编程过程中每步所使 用的工作单元处在何种状态。这是一件十分烦琐的工作,而且编出的程序全是0和1的 指令代码,可读性差,容易出错,机器语言一般不被程序员所使用。 2. 汇编语言 为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与机器指令实际含义 相近的英文缩写词、字母和数字等符号来取代机器指令,这就是汇编语言。例如用ADD 表示运算符号“+”的机器代码。 汇编语言的实质与机器语言是相同的,都是直接对硬件操作,因而仍然是面向机器的 语言,它的通用性差,是低级语言,同样需要编程人员将每一步的具体操作用命令的形式 写出来。因此,汇编语言是冗长、复杂、容易出错的,但是它能直接面向硬件具体操作,汇 编生成的可执行文件比较小,并且执行速度很快,有着高级语言不可替代的用途。 3. 高级语言 随着计算机技术的发展,人们发明了一种与自然语言相近的计算机语言,称为高级语 言。与汇编语言相比,高级语言不但将许多相关的机器指令合成为单条指令,并且去掉了 与具体操作有关但与完成工作无关的细节,如使用堆栈、寄存器等,从而大大简化了程序 中的指令。它具有语意确定、规则明确、自然直观和通用易学的优点。 计算机要执行高级语言编写的程序,就需要一个“翻译”的过程。即把高级语言编写 的程序(源程序)“翻译”成机器语言程序(目标程序)。一般采用两种翻译方式,一是编译 方式,二是解释方式。 编译方式:通过编译程序来翻译。即将编译程序存放在计算机内,当用户将源程序 输入计算机后,编译程序先把源程序整体翻译成目标程序,然后计算机再执行该目标 程序。 计算思维与Python 编程基础(微课版) 解释方式:源程序进入计算机时,逐句输入,逐句翻译,计算机一句句执行,期间并不 产生目标程序。 高级语言包含了许多形式,这些语言的语法、命令格式各不相同。目前,主流的高级 语言有C、Java、C++、C#等。而随着近年来人工智能的火热发展,Python语言也逐渐成 为时代的主流编程语言。 3.3 计算机软件的分类 3. 计算机软件一般分为系统软件和应用软件两大类,如图3. 10所示。 图3. 10 软件系统分类 1.系统软件 系统软件负责管理计算机系统中各种硬件,使得它们可以协调工作。系统软件使得 计算机使用者和其他软件将计算机当作一个整体,而不需要顾及底层每个硬件是如何工 作的。系统软件一般包括操作系统、语言处理程序、数据库管理系统、系统支撑和服务程 序,它与硬件系统有很强的交互性,能对硬件共享资源进行调度。常见的系统软件有 Windows操作系统、UNIX操作系统、C语言编译器、SQL数据库管理系统等。 操作系统是用于管理和控制计算机软硬件资源的系统软件,是软件系统的核心,任何 计算机系统都必须装有操作系统,才能构成完整的运行平台。语言处理程序是将汇编语 言或高级语言编写的程序转换成机器语言程序的翻译程序。数据库管理系统是管理和控 制数据库的软件。系统支撑和服务程序实现存储器格式化、文件系统管理、用户身份验 证、驱动管理、网络连接等。 2.应用软件 应用软件是用于解决各种具体应用问题的软件。按照开发方式和使用范围的不同, 应用软件可以分成两类,即通用应用软件和定制应用软件。 通用应用软件是应用于许多行业和部门的应用软件,如Ofice软件、辅助设计软件 AutoCAD 、游戏软件、网络服务软件等。这类软件的特点是通用性强、应用范围广。 定制应用软件是针对具体问题专门设计开发的软件,满足用户的特定需求,如12306 订票系统、某企业的客户管理系统等。这类软件专业性强,运行效率高,成本较高。 第 3 章计算机系统 95 3.计算机的操作系统 4 3.1 操作系统的定义 4. 图3.操作系 11 所示为计算机的层次结构。计算机系统自上而下可大致分为硬件层、 统层、系统层、应用层、用户层。操作系统层对内是管理和控制各种软硬件资源,对其进行 合理调度和分配,对外是为用户提供各种方便、有效的服务界面。操作系统是最基本、最 重要的系统软件,任何其他软件都必须在操作系统的支持下才能运行。因此,操作系 统可以定义为:操作系统是指控制和管理整个计算机系统的硬件与软件资源,合理地 组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境 的程序集合。 图3. 11 计算机的层次结构 操作系统一般由以下4部分组成。 (1)驱动程序:最底层的、直接控制和监视各类硬件的部分。它们的职责是隐藏硬 件的具体细节,并向其他部分提供一个抽象的、通用的接口。 功能 ( 。 2)内核:操作系统的内核部分通常运行在最高特权级,负责提供基础性、结构性的 (3)接口库:是一系列特殊的程序库。它们的职责在于把系统所提供的基本服务包 装成编程接口(API )。这是最靠近应用程序的部分。 (4)外围:用于提供特定高级服务的部件。 计算机启动后,总是先把操作系统调入内存,然后才能运行其他软件。开机正常后, 用户看到的是已经加载好操作系统的界面,不需要了解硬件的结构和特性,只要会使用软 件进行各种操作即可。 3.2 操作系统的功能 4. 操作系统的功能包括4个方面,即处理器管理、存储管理、设备管理、文件管理。 计算思维与Python 编程基础(微课版) 60 1. 处理器管理 处理器管理负责控制程序的执行,实质上就是为每个任务合理地分配CPU 。为提高 资源利用率,允许多道相互独立的程序在系统中同时运行。处理器的分配和运行都是以 进程为基本单位的,对处理器的管理可以理解为对进程的管理。 进程与程序不是相同的概念,它们既有区别又有联系。进程是一个动态的概念,是 “活动的”,它有产生、运行、消亡的过程。程序是一个静态的概念,是指令和数据的集合, 作为一种文件长期存放在辅助存储器中。进程与程序不是一一对应的,一个程序可以对 应一个进程,也可以对应多个进程。反之,一个进程可以对应一个程序,或对应一个程序 的某一部分。 进程在生命周期内,由于受到资源的制约,其执行是间歇性的,因此进程的状态也是 不断变化的。一般来说,进程有三种基本状态:就绪态、运行态和等待态(也称为“挂起状 态”或“阻塞状态”)。在运行期间,进程不断地从一个状态转换到另一个状态,三种基本状 态之间的转换关系如图3.在调度程序为其分配了CPU 12 所示。处于就绪状态的进程, 资源后,立即转换为运行态。正在执行的进程用完分配的CPU 时间片后,暂停执行,立 即转换为就绪状态。处于运行态的进程因运行所需资源不足,执行受阻时,则转换为等待 状态。当处于等待态的进程获得了运行所需资源时,又由等待态转换为就绪态。 图3. 12 进程的基本状态转换示意图 在Windows中,用户可以使用任务管理器查看正在运行的任务以及进程的相关信 息,如图3.它们共享许多资源。传统的进程可以看 13 所示。一个进程可以有多个线程, 成是只有一个线程在执行的进程。在Windows中,线程是CPU 的分配单位。 2. 存储管理 存储管理负责给运行的每个程序分配内存空间,并在程序结束后及时回收内存,以便 给其他程序使用。主要包括以下4方面内容。 (1)内存分配是为每道程序分配足够运行的内存空间,并且提高存储器的利用率。 (2)内存保护就是在计算机运行过程中保证各道程序都能在自己的内存空间运行而 互不干扰。 (3)地址映射就是操作系统把程序地址空间中的逻辑地址转换为内存空间对应的物 理地址。显然,地址映射功能使用户不必关心物理存储空间的分配细节,从而为用户提供 了方便。 第 3 章计算机系统 图3. 13 任务管理器 (4)内存扩充就是借助于虚拟存储器技术,从逻辑上去扩充内存容量(使用一部分硬 盘空间模拟内存,即虚拟内存), 使系统能够运行对内存需求量远大于物理内存的程序,或 让更多的程序并发执行,从而改善系统效能。 虚拟内存的最大容量与CPU 的寻址能力有关。例如,CPU 的地址线是32 位,则虚 拟内存空间可以达到4GB 。例如,在Windows10 中,如果需要调整虚拟内存的大小,可 选择“计算机”→“属性”→“高级系统设置”→“系统属性”→“高级”→“性能”→“设置”命 令,在弹出的“性能选项”对话框中选择“高级”选项卡,最后在其中的虚拟内存选项下选择 “更改”命令,打开虚拟内存对话框,如图3.14 所示,在此对话框中设置虚拟内存的大小。 3. 设备管理 ( 设备管理负责控制管理各种外围设备,使用户方便、灵活地使用设备,主要包含以下功能。 1)设备分配:需要根据I/O请求和一定的设备分配原则为用户分配外围设备,提 高外设的利用率。 (2)设备传输控制:实现物理的输入输出操作,即启动设备、中断处理、结束处理等。 (3)设备独立性:即设备无关性,由操作系统把用户程序中使用的逻辑设备映射到 物理设备上,用户编写的程序与实际使用的物理设备无关。 (4)缓冲区管理:缓冲区管理的目的是解决CPU 与I/O设备之间速度不匹配的矛 盾。使用缓冲区可以提高外设与CPU 之间的并行性,从而提高整个系统的性能。 (5)设备驱动:操作系统依据设备驱动程序来实现CPU 与通道、外设之间的通信。 26 计算思维与Python 编程基础(微课版) 图3.虚拟内存”对话框 14 “ 设备驱动程序直接与硬件设备打交道,告诉系统如何与设备通信,完成具体的输入输出任 务。对操作系统中并未配备驱动程序的硬件设备,必须手动安装设备驱动程序。 在Windows10 中打开图3.设备管理器” 可以查看和更改该台计算 15 所示的“ 窗口, 机系统上的设备属性,更新设备驱动程序,配置设备和卸载设备。 图3.设备管理器”窗口 15 “ 第 3 章计算机系统 36 4. 文件管理 文件管理负责对存放在计算机中的信息进行逻辑组织,维护目录结构,并对文件进行 各种操作。文件管理的主要任务是有效地支持文件的存储、检索和修改等操作,解决文件 的共享、保密和保护问题,使用户方便安全地使用所需的文件。 文件系统是操作系统中实现对文件的组织、管理和存取的一组系统程序,或者说它是 管理文件资源的软件。与文件管理相关的概念如下。 (1)文件:一组相关信息的集合,任何程序和数据都以文件的形式存放在计算机的 辅助存储器上,文件是数据组织的最小单位。 (2)文件名:任何一个文件都有一个名称,文件的操作依据文件名进行。文件名一 般由文件主名和扩展名两部分组成,文件主名往往是代表文件内容的标志,扩展名表示文 件的类型。 (3)文件夹:其图标像一本书,打开文件夹就像翻开书一样,里边的内容一目了然, 非常直观。文件夹和不同类型的文件采用不同的图标,因而很容易区分。 (4)路径:由目录文件和非目录文件组成,从树根到任何一个结点有且只有一条路 径,该路径的全部结点组成一个全路径名,用来唯一标志和定位某一特定文件。 在Windows10 中, 16 所示的“ 或“资源管理器”窗口进行 用户可以通过图3.计算机” 文件管理,如浏览文件、文件夹和其他系统资源,新建文件夹,对文件和文件夹进行复制、 移动、删除、重命名等操作。 图3. 16 文件管理窗口 3.3 操作系统的载入 4. 开机过程就是启动操作系统的过程,也就是把操作系统的核心部分调入内存,主要包 括以下过程。 (1)计算机接通电源,按下启动开关,电源给主板及其他设备发出电信号。 计算思维与Python 编程基础(微课版) (2)电脉冲使处理器芯片复位,并查找含有BIOS 的ROM 芯片。 (3)BIOS 执行加电自检,检测各种系统部件,如总线、系统时钟、扩展卡、RAM 芯片、 键盘及驱动器等,确保硬件连接正常,显示器会同步显示检测到的系统信息。 (4)系统自动将自检结果与主板上CMOS 芯片中的数据进行比较。自检时还要检 测所有连接到计算机的新设备。如果发现了问题,计算机可能会发出长短不一的提示声 音,显示器会显示出错信息。如果问题严重,计算机还可能停止操作。 (5)如果加电自检成功,BIOS 就会到辅助存储器中查找一些专门的系统文件(分区 引导程序), 找到后,这些系统文件就被调入主存储器并执行。接下来,由这些系统文件把 操作系统的核心部分导入主存储器。这样操作系统就接管、控制了计算机,并把操作系统 的其他部分调入计算机。 (6)操作系统将系统配置信息从注册表调入内存。在Windows系统中,注册表由几 个包含系统配置信息的文件组成。 操作系统完成以上工作后,显示器上就会出现Windows的桌面和图标,接着操作系 统自动执行“开始”→“所有程序”→“启动”子菜单中的程序。此时,计算机启动完毕,用户 就可以开始使用计算机了。 3.4 操作系统的分类 4. 随着计算机技术的迅速发展和计算机的广泛应用,用户对操作系统的功能、应用环 境、使用方式不断提出了新的要求, 17 所示为操 逐步产生了不同类型的操作系统。图3. 作系统的分类 。 图3. 17 操作系统分类 1. 按功能划分 1)单用户操作系统 计算机系统在单用户、单任务操作系统的控制下,只能串行地执行用户程序,个人独占 第 3 章计算机系统