第1章 计算机系统概述

王道学习

考纲内容

(一)计算机系统层次结构
           计算机系统的基本组成
           计算机硬件的基本组成
           计算机软件和硬件的关系
           计算机系统的工作原理:“存储程序”方式:高级语言程序与机器语言程序的转换;程序和指令的执行过程
(二)计算机性能指标
           吞吐量;响应时间;CPU时钟周期;主频;CPI;CPU执行时间;MIPS;MFLOPS;GFLOPS;TFLOPS;PFLOPS;EFLOPS;ZFLOPS

复习提示

        本章是组成原理的概述,考查时易针对有关概念或性能指标出选择题,也可能综合后续章节的内容出有关性能分析的综合题。掌握本章的基本概念,是学好后续章节的基础。部分知识点在初学时理解不深刻也无须担忧,相信随着后续章节的学习,一定会有更为深入的理解。
        学习本章时,请读者思考一下问题:
        1)计算机由哪几部分组成?以哪部分为中心?
        2)主频高的CPU一定比主频低的CPU快么?为什么?
        3)翻译程序、汇编程序、编译程序、解释程序有什么差别?各自的特性是什么?
        4)不同级别的语言编写的程序有什么区别?哪种语言编写的程序能被硬件直接执行?
        请读者在学习本章的过程中寻找答案,本章末尾会给出参考答案。

1.1 计算机发展历程

在这里插入图片描述

1.1.1 计算机硬件的发展

        1、计算机的四代变化
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 小规模集成电路
    小规模集成电路是指芯片上只集成了十几个逻辑门电路,如门电路、触发器、计数器等。其优点在于可靠性高、功耗低、体积小、价格便宜。通常应用于工业控制、嵌入式系统、数字电路等领域。在传统的数字电路设计中,小规模集成电路也往往是一种可行的解决方案。

  • 中规模集成电路
    中规模集成电路是指芯片规模介于25 - 3000个逻辑门之间。由于其集成电路比小规模芯片更复杂,内部连接更复杂,制造技术更先进,因此中规模集成电路不仅可以实现数字电路,同时也可以实现一定量的模拟电路。中规模集成电路的应用范围广泛,可以应用于通信、计算机、控制等领域。

  • 大规模集成电路
    大规模集成电路是指芯片上包含了超过3000个逻辑门电路,但一般规模在10万门以下。随着技术的不断发展和进步,大规模集成电路的集成度越来越高,一个芯片上可集成数百万的逻辑门电路。大规模集成电路的应用范围非常广泛,包括计算机领域、通信领域、娱乐产业、医疗设备等等。

芯片和集成电路是密不可分的关系。芯片是指将电子元器件、电路和其他功能部件集成在一块半导体晶片上的微小器件,而集成电路则是将多个电子元器件和电路集成在一块半导体晶片上的电路。芯片是集成电路的核心组成部分,也是集成电路技术的基础。集成电路则是各种电子设备的核心部件,它将多个芯片和其他电子元器件集成在一起,实现了设备的高效、稳定和可靠运行。

        2、计算机元件的更新迭代

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.1.2 计算机软件的发展

在这里插入图片描述

在这里插入图片描述

1.2 计算机系统层次结构

  • 什么是计算机系统?
    计算机系统=硬件+软件
    硬件如:计算机的实体,如主机、外设等
    软件如:由具有各类特殊功能的程序组成
  • 计算机性能的好坏取决于“软”、“硬”件功能的总和

1.2.1 计算机系统的组成

        硬件系统和软件系统共同构成了一个完整的计算机系统。硬件是指有形的物理设备,是计算机系统中实际物理装置的总称。软件是指在硬件上运行的程序和相关的数据及文档。
        计算机系统性能的好坏,很大程度上是由软件的效率和作用来保证的,而软件性能的发挥又离不开硬件的支持。对某一功能来说,若其既可以用软件实现,又可以用硬件实现,则称为软/硬件在逻辑功能上等价的。在设计计算机系统时,要进行软/硬件的功能分配。通常来说,一个功能若使用较为频繁且用硬件实现的成本较为理想,则使用硬件解决可以提高效率。

1.2.2 计算机硬件

        1、冯诺依曼机基本思想
        冯诺依曼首次提出了“存储程序”的概念:是指将指令以二进制代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。(将事先编制好的程序和原始数据送入主存后才能执行,一旦程序被启动执行,就无须操作人员的干预,计算机会自动逐条执行指令,直至程序执行结束。)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

        现代计算机的结构
在这里插入图片描述
在这里插入图片描述
        2、计算机的功能部件
在这里插入图片描述

寄存器是一种小型存储区域,用于暂时存放参与运算的数据和运算结果。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 主存储器的基本组成
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 运算器的基本组成
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 控制器的基本组成
    在这里插入图片描述

  • 计算机的工作过程
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 回顾:冯诺依曼机的特点
    - 计算机由五大部件组成
    - 指令和数据以同等地位存于寄存器,可按地址寻址
    - 指令和数据用二进制表示
    - 指令由操作码和地址码组成
    - 存储程序
    - 以运算器为中心(现在一般以存储器为中心)

1.2.3 计算机软件

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.2.4 计算机系统的层次结构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下层是上层的基础,上层是下层的扩展
在这里插入图片描述

1.2.5 计算机系统的工作原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2.6 本节习题精选

1.3 计算机的性能指标

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

CPU主频相当于节奏(类似于广播体操的12345678);主频为10hz意思是每秒钟有10个脉冲信号(时钟周期)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
固件:将程序固化在ROM中组成的部件称为固件。固件是一种具有软件特性的硬件,吸收了软/硬件各自的特点,其执行速度快与软件,灵活性优于硬件,是软/硬件结合的产物。例如,目前操作系统已实现了部分固化(把软件永恒地存储于ROM中)

在这里插入图片描述

1.4 本章小结

1)计算机由哪几部分组成?以哪部分为中心?
计算机由运算器、控制器、存储器、输入设备及输出设备五大部分构成,现代计算机通常把运算器和控制器集成在一个芯片上,合称为中央处理器。
而在微处理器面世之前,运算器和控制器分离,而且存储器的容量很小,因此设计成以运算器为中心的结构,其他部件都通过运算器完成信息的传递。
随着微电子技术的进步,同时计算机需要处理、加工的信息量也与日剧增,大量I/O设备的速度和CPU的速度差距悬殊,因此以运算器为中心的结构不能满足计算机发展的要求。现代计算机已经发展为以存储器为中心,使I/O操作尽可能地绕过CPU,直接在I/O设备和存储器之间完成,以提高系统的整体运行效率。

2)主频高的CPU一定比主频低的CPU快么?为什么?
衡量CPU运算速度的指标有很多,不能以单独的某个指标来判断CPU的好坏。CPU的主频,即CPU内核工作的时钟频率。CPU的主频表示CPU内数字脉冲信号震荡的速度,主频和实际的运算速度存在一定的关系,但目前还没有一个确定的公式能够定量两者的数值关系,因为CPU的运算速度还要看CPU的流水线的各方面的性能指标(架构、缓存、指令集、CPU的位数、Cache大小等)。由于主频并不能直接代表运算速度,因此在一定情况下很可能会出现主频较高的CPU实际运算速度较低的现象。

3)翻译程序、汇编程序、编译程序、解释程序有什么差别?各自的特性是什么?
见常见问题和易混淆知识点1。

4)不同级别的语言编写的程序有什么区别?哪种语言编写的程序能被硬件直接执行?
机器语言和汇编语言与机器指令对应,而高级语言不与指令直接对应,具有较好的可移植性。其中机器语言可以被硬件直接执行。

1.5 常见问题和易混淆知识点

1、翻译程序、解释程序、汇编程序、编译程序的区别和联系是什么?
翻译程序有两种:一种是编译程序,它将高级语言源程序一次全部翻译成目标程序,只要源程序不变,就无须重新翻译。另一种是解释程序,它将源程序的一条语句翻译成对应的机器目标代码,并立即执行,然后翻译下一条源程序语句并执行,直至所有源程序语言全部被翻译并执行完。所以翻译程序的执行过程是翻译一句执行一句,并且不会生成目标程序。
汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译为机器语言程序。
编译程序与汇编程序的区别:若源程序诸如C、C++、Java等“高级语言”,而目标语言是诸如汇编语言或机器语言之类的“低级语言”,则这样的一个翻译程序称为编译程序。若源语言是汇编语言,而目标语言是机器语言,则这样的一个翻译程序称为汇编程序。

2、什么是透明性?透明是指什么都能看见么?
在计算机领域中,站在某类用户的角度,若感觉不到某个事物或属性的存在,即“看”不到某个事物或属性,则称为“对该用户而言,某个事物或属性是透明的”。这与日常生活中的“透明”概念(公开、看得见)正好相反。
例如,对于高级语言程序员来说,浮点数格式、乘法指令等这些指令的格式、数据如何在运算器中运算等都是透明的;而对于机器语言或汇编语言程序员来说,指令的格式、机器结构、数据格式等则不是透明的。
在CPU中,IR、MAR和MDR对各类程序员都是透明的。

3、字、字长、机器字长、指令字长、存储字长的区别和联系是什么?
在通常所说的“某16位或32位机器”中,16、32指的是字长,也称机器字长。所谓字长,通常是指CPU内部用于整数运算的数据通路的宽度,因此字长等于CPU内部用于整数运算的运算器位数和通用寄存器宽度,它反应了计算机处理信息的能力。字和字长的概念不同。字用来表示被处理信息的单位,用来度量数据类型的宽度,如x86机器中将一个字定义为16位。
指令字长:一个指令中包含的二进制代码的位数。
存储字长:一个存储单元存储的二进制代码的长度。
它们都必须是字节的整数倍。
指令字长一般取存储字长的整数倍,若指令字长等于存储字长的2倍,则需要2个访存周期来取出一条指令;若指令字长等于存储字长,则取指周期等于机器周期。
早期的存储字长一般与指令字长、字长相等。因此访问一次主存便可取出一条指令或一个数据。随着计算机的发展,指令字长、字长都可变,但必须都是字节的整数倍。

4、计算机体系结构和计算机组成的区别和联系是什么?
计算机体系结构是指机器语言或汇编语言程序员所看得到的传统机器的属性,包括指令集、数据类型、存储器寻址技术等,大都属于抽象的属性。
计算机组成是指如何实现计算机体系结构所体现的属性,它包含对许多对程序员来说透明的硬件细节。例如,指令系统属于结构的问题,但指令的实现即如何取指令、分析指令、取操作数、如何运算等都属于组成的问题。因此,当两台机器指令系统相同时,只能认为它们具有相同的结构,至于这两台机器如何实现其指令,完全可以不同,即可以认为它们的组成方式是不同的。例如,一台机器是否具备乘法指令是一个结构的问题,但实现乘法指令采用什么方式则是一个组成的问题。许多计算机厂商提供一系列体系结构相同的计算机,而它们的组成却有相当大的差别,即使是同一系列的不同型号机器,其性能和价格差异也很大。

5、基准程序执行得越快说明机器的性能越好么?
一般情况下,基准测试程序能够反映机器性能的好坏。但是,由于基准程序中的语句存在频度的差异,因此运行结果并不能完全说明问题。

  • 17
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李贺梖梖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值