计算机系统分为哪两种,计算机系统包含哪几方面

首页 > 体育 > 作者:YD1662023-12-25 05:10:38

本节内容:计算机硬件系统的组成。

计算机的核心部件:CPU、内存、主板、硬盘、显卡、显示器和键盘。

计算机的结构演化:冯·诺依曼、以存储为中心计算机结构、现代计算机结构。

计算机系统的五个层次:第0层微指令、第1层机器语言指令集、第2层操作系统、第3层汇编语言、第4层高级语言。

1.2.1 计算机的构成

这节我们将介绍计算机的硬件组成,对计算机有个整体的认识。接下来的课程,我们都是围绕计算机的各个硬件来讲述。学习如何通过计算机软件来控制计算机各个硬件的工作。

计算机硬件组成

计算机系统分为哪两种,计算机系统包含哪几方面(1)

图1-9 计算机的构成

图1-9展示了计算机的硬件组成。在我们学习程序设计之前,我们需要明确一个概念:计算机系统分为硬件系统和软件系统。计算机硬件是由CPU、内存、主板、磁盘、I/O输入输出设备等一系列硬件组成的。计算机没有智慧,没有生命。计算机软件是由程序员编写的由数据和指令组成的可执行程序,包括操作系统、基础软件和应用软件。计算机是在程序员编写的控制指令下运行,并完成预定的任务。在这一节中,我们将熟悉计算机的硬件组成及功能。在第二部分十六位汇编的章节中,我们将学习如何通过编写程序指令来控制8086计算机的CPU、内存、磁盘、键盘、显示器、打印机等部件的运行。在我们完成这部分内容的学习之后,将会深刻的理解计算机运行的原理,对我们今后的学习带来非常大的帮助。

下面我们分别介绍计算机的主要部件。

●CPU

CPU相当于计算机的大脑。

CPU的作用是什么呢?

第一个作用是控制计算机各个部件进行工作。

第二个作用是进行算数和逻辑运算。

第三个作用是进行数据的交换。

我们将在第六章8086 CPU寄存器的章节中详细介绍CPU寄存器。

●主板

主板是计算机各个部件的载体。主板通过插槽和总线将CPU和外部各个部件进行连接。我们可以看到的主板上连接各个插槽的印刷电路就是总线。总线又分为数据总线、地址总线和控制总线。在本章“1.5节总线”中我们将详细介绍。

如图1-10所示的电脑主板电路图,主板中心位置为CPU插槽,CPU通过总线和主板上其他硬件设备的插槽连接。

●内存

内存是用来存储数据和指令的地方,由成千上万个寄存器构成。内存通过主板上的内存条插槽与CPU进行连接。内存存储空间的大小以字节为单位,每个字节都有一个地址编号。我们将在“1.3节基本概念”中详细讲解内存的概念。内存读写数据的速度比较快。内存是仅次于CPU之外,最重要的计算机部件了。内存越大,则计算机同一时间处理的数据能力就越强。内存将是我们今后学习内容的重点。我们将在第七章8086寻址方式的章节中详细讲解8086计算机的寻址方式。

●硬盘

硬盘属于外部存储设备,也称为磁盘。通常以文件的形式存储数据,通过硬盘内的磁头读写数据。硬盘存储数据的容量比内存大的多,成本低,但是读写数据的速度比较慢。第十三章磁盘文件管理及应用的章节中我们将详细讲解8086计算机磁盘文件的操作。

●显卡

显卡称为GPU,是通过屏幕用来显示数据的部件。早期的显卡通过主板独立的插槽与CPU进行连接。现在由于超大规模集成电路的发展,部分CPU厂商已经将显卡集成到了CPU内部,称之为集成显卡。显卡有自己独立的存储空间,称之为显存。显存分为RAM动态存储和ROM静态存储两个部分。我们把要在屏幕显示的数据写入显存的RAM动态存储空间,就可以在屏幕上显示出来了。而显存的ROM静态存储空间存放的是显卡的I/O驱动程序。显存越大,同一时间存储的数据就越多,显卡性能就越高,屏幕显示的画面也更为流畅。我们将在第十六章输入和输出中断的章节中详细讲述8086计算机显卡驱动程序的实现。

计算机系统分为哪两种,计算机系统包含哪几方面(2)

图1-10 电脑主板电路图

●显示器

显示器是显卡用来显示数据的标准输出设备。作为程序员,我们需要学习的仅限显卡设备的驱动,并不需要关心显示器的物理特性。

●光驱

光驱是用来读写光盘的外部输入输出设备,随着移动硬盘设备的快速发展。现在的计算机用的相对来说要少一些。

●键盘

键盘是我们进行人机交互的一个设备,是计算机的标准输入设备。键盘上的按键分为字符键、功能键和控制键。每个按键都对应一个扫描码。当我们按下一个字符键时会产生通码,得到一个扫描码和ASCII码,表示按下的是哪个键,及其对应的字符。功能键F1~F12的ASCII码为0。CTRL、ALT、SHIFT、Caps和NumLock键为控制键,按下控制键,会在键盘按键的状态字节中将其相应的标志位置1,当我们获取键盘状态字节后,就知道是否按下以及按下哪个控制键了。详细的内容我们将在第十六章输入和输出中断的章节中详细讲解。

●鼠标

鼠标是另一个人机交互的输入设备,其实就相当于一个简化的小键盘。早期的鼠标只有一个按键,后来发展为左右两个按键。今天的鼠标左右按键中间还有一个滚轮,用来操作窗口的滚动条。我们将在Windows程序设计的课程中详细讲解鼠标设备的操控。

●其他设备

机箱是计算机的外壳,包含控制计算机开关机按键,通过连接线与主板对应的插槽相连。

电源设备是给计算机供电的外部设备,包括主板电源接口和其他外部设备独立电源接口。

网卡和声卡设备早期都是独立的外部设备,通过主板插槽与CPU连接,网卡控制计算机连接外部互联网。声卡控制声音的输入和输出。现在的计算机通常将声卡和网卡集成到主板上,不再使用独立的设备。

此外还有一些其他的外部设备,比如扫描仪、打印机等等。关于打印机设备我们将在第十五章数据传输方式第十六章输入和输出中断的章节中详细介绍。

总结

CPU是计算机系统的核心,CPU内部的控制单元控制计算机外部设备的运行。CPU内部的算术逻辑运算单元,进行算术逻辑运算。CPU内的寄存器进行数据存储、命令控制、状态记录、寻址等操作。

CPU通过主板的总线与主板插槽上的外部设备连接,通过控制总线传输控制命令来控制外部设备的运行。通过数据总线向外部设备传输数据。通过地址总线获取外部设备的端口地址。CPU也可以通过指定的端口地址读取外部设备的状态寄存器,获取当前外部设备状态信息。

内存是计算机除了CPU之外最重要的部件。内存是一组以字节为单位的连续的线性存储空间,每个字节都有一个地址编号。计算机与外部设备之间的数据传送,程序的加载和运行都离不开内存。如果要读写内存中的数据和指令,就必须要准确的找到该数据或指令在内存中的确切地址。因而正确的寻址,是内存数据读写和程序控制的关键。

键盘是计算机人机交互的标准输入设备。显卡及屏幕是计算机人机交互的标准输出设备。

此外我们常用的一个输出设备就是打印机设备。我们将输入输出设备称之为计算机的I/O设备。我们将在第十六章输入和输出中断的章节中详细讲解这些设备的驱动程序。

总之,计算机是由一些硬件设备和软件构成的,我们称之为计算机系统。程序员通过编写计算机软件发送控制命令,来控制计算机的运行。

提示

可能有些读者是初学者,对上述内容中提到的一些概念还比较陌生。没有关系,我们会在后续的章节中详细的讲解这些概念,及其具体实现的原理和过程。当我们学完具体的内容之后,再回来看上述内容时,应该会亲切的多。

1.2.2 计算机结构

■典型的冯.诺依曼结构:(巴贝奇的分析机原理)

计算机系统分为哪两种,计算机系统包含哪几方面(3)

图1-11 冯.诺依曼结构

图1-11展示的冯·诺伊曼结构其实是继承了巴贝奇的分析机的原理。有输入设备、输出设备和存储器这三个关键的部件。中间位置有一个运算器,功能是算数运算和逻辑运算。此外还有一个控制器,控制器的功能是用来控制计算机各个部件进行工作的。

我们来看一下冯·诺依曼结构的工作流程。我们用黑色实线来表示数据线,蓝色虚线表示控制线。

先看数据的传输过程:

①先由输入设备进行数据的输入。

②数据输入之后,将数据送入运算器进行算术逻辑运算。

③在进行算术逻辑运算时,运算器和存储器之间会有一个数据交换。比如从存储器中读取一个操作数,或者将计算时产生的临时结果保存在存储器中。

④输出数据。有两种情形,一是运算器计算出结果后直接将结果输出。二是将保存在存储器中的结果取出后输出。

再看控制指令的传输过程:

①控制器发送控制指令给输入设备。

②控制器发送控制指令给输出设备。

③控制器发送控制指令给运算器。

④控制器发送指令给存储器。

接下来我们再看以存储为中心的计算结构。

■以存储为中心计算机结构

计算机系统分为哪两种,计算机系统包含哪几方面(4)

图1-12 以存储器为中心计算机结构

图1-12展示以存储为中心的计算结构,分为三个数据指令传输过程,相对于冯.诺依曼结构增加了一个反馈过程。它的部件其实和冯.诺依曼结构的几个主要部件是一样的,有输入设备、输出设备控制器、存储器和运算器。只是它工作的流程有了变化。

首先看一下控制流程:

①控制器发送控制指令给输入设备。

②控制器发送控制指令给输出设备。

③控制器发送控制指令给运算器。

④控制器发送指令给存储器。

相对于冯·诺依曼结构没有什么变化。

接着看一下数据传输流程:

①首先数据从输入设备输入。

②接着数据从输入设备进入存储器。

③存储器将数据(指令)送入控制器。

④运算器对存储器可以进行读写双向操作。

⑤数据由存储器送入输出设备,输出结果。

再看一下反馈流程:

控制器通过控制指令操作输入设备、输出设备、存储器、运算器的同时,上述设备会将设备状态返回给控制器,以便判断错误原因以及下一步如何操作。

以存储为中心的计算机结构对比冯·诺依曼结构有什么优点呢?

在冯·诺依曼结构中,如果说工作的流程中出现错误了(任何一个环节都可能出现错误),但是我们并不清楚。如果说有了反馈信息,那么我们就可以很清楚的知道在哪一个环节出了问题,是输入设备还是输出设备的问题,一目了然。这是一个很重要的改进。

此外,以存储为中心的计算机结构,数据和指令的传输过程更为简洁和高效。存储器中的数据送入运算器,存储器中的指令送入控制器。

注意

此时会产生一个新的问题,我们怎么知道哪些是数据,哪些是指令呢?如果我们在编写程序的时候将指令和数据按照指定的编码格式书写和标注,并且分段存储在不同的区域就很容易解决这个问题了。在后续编写程序时我们就是这样做的。

■现代计算机结构

计算机系统分为哪两种,计算机系统包含哪几方面(5)

图1-13展示的现代计算机的结构与存储为中心结构类似,包括I/O输入输出设备。CPU内部有控制单元和逻辑算术运算单元,然后是一个主存储器。

现代计算机结构与以存储器为中心的计算机结构工作流程类似,包括数据、命令和反馈信息的传输,上述数据信息在CPU、主存储器和外部I/O设备之间移动,这里不再赘述。

1.2.3 多层次计算机系统

计算机系统的5个层次

如图1-14所示:

第0层微指令:是物理逻辑电路,不是普通用户可以编写的程序指令,属于商业秘密。

第1层机器语言指令集:是固化在处理器内部,执行移动、加法和乘法等操作,每条机器语言可以分成几条微指令执行。

第2层操作系统:能够理解用户发出的诸如执行程序、显示目录之类的交互命令。操作系统被翻译为机器码在第1层执行。

第3层汇编语言:在操作系统之上,能够实际开发大型软件的翻译层。汇编指令被翻译成机器语言,由操作系统执行。

计算机系统分为哪两种,计算机系统包含哪几方面(6)

图1-14 多层次计算机系统

第4层高级语言:诸如C 、C#、JAVA、Python之类的高级语言先由编译器翻译成C语言,再翻译成汇编语言,最后转为机器语言,由操作系统执行。其他应用脚本类的应用语言由该语言的解释器解释成C语言后直接运行。

注意

汇编语言比较特殊。汇编语言程序既可以在操作系统之上运行,也可以越过操作系统,直接控制硬件。我们将在第十六章输入和输出中断章节中详细讲解。

提示

我们在C语言阶段的课程中将发明一个新的高级语言,并编写一个简单的编译器和解释器,在我们自己写的 Simpletron虚拟机上运行。当我们完成这个项目之后,我们对计算机及计算机软件的工作原理将有一个非常深刻的认知。

练习

1、自己动手组装一次PC机,熟悉PC机的各个组成部分。组装过PC机的同学可以忽略。

2、写出计算机系统的5个虚拟机层次,并说明处理不同虚拟机层使用的翻译技术。

3、程序员为什么不可以使用微指令编写应用程序?

4、如果自己组装一台PC机,需要购买哪些部件,注意哪些细节?不明白的可以网上查阅资料或者询问卖家客服。

5、冯·诺伊曼计算机的特点是什么?

6、请画出主机组成结构图,并说明各个部件的作用是什么?

7、汇编语言是由操作系统翻译成机器语言的,这个说法对吗?请说明。

摘自编程达人系列教材《X86汇编语言基础教程》!

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.