【计算机组成原理】第一章 计算系统概论

news2025/4/26 22:04:12

系列文章目录

第一章 计算系统概论
第二章 运算方法和运算器
第三章 多层次的存储器
第四章 指令系统
第五章 中央处理器
第六章 总线系统
第七章 外围设备


文章目录

  • 系列文章目录
  • 前言
  • 第一章 计算机系统概论
    • 1.1 计算机的分类
    • 1.2 计算机发展简史
      • 1.2.1 计算机的五代变化
      • 1.2.2 半导体存储器的发展
      • 1.2.3 微处理器的发展
      • 1.2.4 计算机的性能指标
    • 1.3 计算机的硬件
      • 1.3.1 硬件组成要素
      • 1.3.2 运算器
      • 1.3.3 存储器
      • 1.3.4 控制器
      • 1.3.5 适配器与I/O设备
    • 1.4 计算机的软件
      • 1.4.1 软件的组成与分类
      • 1.4.2 软件的发展演变
    • 1.5 计算机系统的层次结构
      • 1.5.1 多级计算机系统
      • 1.5.2 软件与硬件逻辑等价性
  • 总结


前言


第一章 计算机系统概论

在这里插入图片描述

1.1 计算机的分类

一、电子计算机从总体上来说分为两大类。

  • 电子模拟计算机。“模拟”就是相似的意思。模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。
  • 电子数字计算机,它是在算盘的基础上发展起来的,是用数目字来表示数量的大小。数字计算机的主要特点是按位运算,并且不连续地跳动计算。
  • 数字计算机与模拟计算机的主要区别:
    在这里插入图片描述

二、数字计算机分类

  • 数字计算机根据计算机的效率、速度、价格、运行的经济性和适应性来划分,可以划分为两类:
    • 专用计算机:专用机是最有效、最经济和最快速的计算机,但是它的适应性很差。
    • 通用计算机:通用计算机适应性很大,但是牺牲了效率、速度和经济性。

三、通用计算机分类

  • 通用计算机根据体积、简易性、功率损耗、性能指标、数据存储容量、指令系统规模和机器价格等可以分为:
    • 超级计算机、大型机、服务器、PC机、单片机、多核机
      在这里插入图片描述

1.2 计算机发展简史

1.2.1 计算机的五代变化

  • 第一代为1946—1957年,电子管计算机:数据处理
  • 第二代为1958—1964年,晶体管计算机:工业控制
  • 第三代为1965—1971年,中小规模集成电路计算机:小型计算机
  • 第四代为1972—1990年,大规模和超大规模集成电路计算机:微型计算机
  • 第五代为1991年开始,巨大规模集成电路计算机:单片机

1.2.2 半导体存储器的发展

  • 20世纪50~60年代,所有计算机存储器都是由微小的铁磁体环
  • 1970年,仙童半导体公司生产出了第一个较大容量半导体存储器
  • 从1970年起,半导体存储器经历了11代:单个芯片1KB、4KB、16KB、64KB、256KB、1MB、4MB、16MB、64MB、256MB、GB。
  • 其中1K=210,1M=220,1G=230

1.2.3 微处理器的发展

  • 1971年Intel公司开发出Intel 4004。这是第一个将CPU的所有元件都放入同一块芯片内的产品,于是,微处理器诞生了。
  • 微处理器演变中的另一个主要进步是1972年出现的Intel 8008,这是第一个8位微处理器,它比4004复杂一倍。
  • 1974年出现了Intel 8080。这是第一个通用微处理器,而4004和8008是为特殊用途而设计的。8080是为通用微机而设计的中央处理器。
  • 20世纪70年代末才出现强大的通用16位微处理器,8086便是其中之一。
  • 这一发展趋势中的另一阶段是在1981年,贝尔实验室和HP公司开发出了32位单片微处理器。
  • Intel于1985年推出了32位微处理器Intel 80386。
  • 到现在的64位处理器和多核处理器

1.2.4 计算机的性能指标

  • 吞吐量:
    • 表征一台计算机在某一时间间隔内能够处理的信息量
    • 单位是字节/秒(B/S)。
  • 响应时间:
    • 表征从输入有效到系统产生响应之间的时间度量,用时间单位来度量
    • 例如微秒(10-6S)、纳秒(10-9S)。
  • 利用率:
    • 表示在给定的时间间隔内,系统被实际使用的时间所占的比率,一般用百分比表示。
  • 处理机字长:
    • 指处理机运算器中一次能够完成二进制数运算的位数。
    • 当前处理机的字长有8位、16位、32位、64位。字长越长,表示计算的精度越高。
  • 总线宽度:
    *8 一般指CPU中运算器与存储器之间进行互连的内部总线二进制位数。
  • 存储器容量:
    • 存储器中所有存储单元的总数目,通常用KB、MB、GB、TB来表示。
    • 其中K=210,M=220,G=230,T=240,B=8位(1个字节)。
    • 存储器容量越大,记忆的二进制数越多。
  • 存储器带宽:
    • 存储器的速度指标,单位时间内从存储器读出的二进制数信息量
    • 一般用字节数/秒表示。
  • 主频/时钟周期:
    • CPU的工作节拍受主时钟控制,主时钟不断产生固定频率的时钟,主时钟的频率(f)叫CPU的主频。
    • 度量单位是MHz(兆赫兹)、GHz(吉赫兹)。例如Pentium系列机为60MHz~266MHz,而Pentium 4升至3.6GHz
  • CPU时钟周期(T):
    • 主频的倒数称为CPU时钟周期(T),即T=1/f
    • 度量单位是微秒、纳秒。
  • CPU执行时间:
    • 表示CPU执行一段程序所占用的CPU时间,可用下式计算:
    • PU执行时间 = CPU时钟周期数 × CPU时钟周期
  • CPI:
    • 表示每条指令周期数,即执行一条指令所需的平均时钟周期数。
    • 计算公式:
      在这里插入图片描述
  • MIPS:
    • 表示每秒执行百万条指令数
    • 计算公式:
      在这里插入图片描述
  • 程序执行时间Te为:
    在这里插入图片描述
  • MFLOPS:
    • 表示每秒百万次浮点操作次数,
    • 计算公式:
      在这里插入图片描述
  • MIPS 是单位时间内的执行指令数,所以MIPS值越高说明机器速度越快。
  • MFLOPS 是基于操作而非指令的,只能用来衡量机器浮点操作的性能,而不能体现机器的整体性能。
  • TFLOPS 表示每秒万亿次浮点操作次数,该技术指标一般在超级计算机中使用。

1.3 计算机的硬件

1.3.1 硬件组成要素

一、手工模仿计算机工作
在这里插入图片描述
二、数字计算机基本组成

  • 控制器:人的大脑的操作控制功能
  • 运算器:人的大脑的计算功能
  • 存储器:人的大脑记忆功能
  • 输入设备:交互接口,笔
  • 输出设备:交互接口,纸

三、冯·诺依曼型计算机

  • 存储程序
  • 按地址自动执行
  • 五大部件:包括控制器、运算器、存储器、输入设备、输出设备
  • 以运算器为中心
  • 冯·诺依曼型计算机:
    在这里插入图片描述
  • 计算机的组成结构
    在这里插入图片描述

1.3.2 运算器

  • 算术运算和逻辑运算
  • 在计算机中参与运算的数是二进制的
  • 运算器的长度一般是8、16、32或64位
    在这里插入图片描述

1.3.3 存储器

  • 存储数据和程序(指令)
  • 容量(存储单元、存储单元地址、容量单位)
  • 分类内存(ROM、RAM)、外存
  • 存储器单位:
    • 1KB = 210B
    • 1MB = 220B
    • 1GB = 230B
    • 1TB = 240B
      在这里插入图片描述

1.3.4 控制器

  • 指令和程序:指令的形式(操作和地址码、存储程序的概念、指令中程序和数据的存放、指令系统)
  • 指令和数据存储
  • 控制器的基本任务
    • 控制器的基本任务:按照一定的顺序一条接着一条取指令、指令译码、执行指令。取指周期和执行周期
    • 控制器完全可以区分开哪些是指令字,哪些是数据字。一般来讲,取指周期中从内存读出的信息流是指令流,它流向控制器;而在执行器周期中从内存读出的信息流是数据流,它由内存流向运算器。
      在这里插入图片描述

1.3.5 适配器与I/O设备

  • 输入设备:把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式
  • 输出设备:把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式
  • 适配器:它使得被连接的外围设备通过系统总线与主机进行联系,以便使主机和外围设备并行协调地工作
  • 总线:构成计算机系统的骨架,是多个系统部件之间进行数据传送的公共通路。
  • 总之,现代电子计算机是由运算器、存储器、控制器、适配器、总线和输入/输出设备组成的。这也是人们常说的计算机硬件。

1.4 计算机的软件

1.4.1 软件的组成与分类

  • 计算机软件相对计算机硬件来说是看不见,是计算机系统中不可少的无形部件。主要有两大类:
  • 系统软件:用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥和扩大计算机的功能及用途。它包括以下四类:
    • 各种服务性程序,如诊断程序、排错程序、练习程序等
    • 语言程序,如汇编程序、编译程序、解释程序等
    • 操作系统
    • 数据库管理系统
  • 应用软件:
    • 用户利用计算机来解决某些问题而编制的程序
    • 如工程设计程序、数据处理程序、自动控制程序、企业管理程序、情报检索程序、科学计算程序等

1.4.2 软件的发展演变

  • 编程语言的发展
    • 手编程序:机器语言程序,手工编译二进制码
    • 汇编程序:符号语言程序,汇编程序汇编
    • 高级程序:算法语言/高级语言,机器编译程序/解释程序
  • 系统软件的发展
    • 操作系统
    • 分布式系统软件

1.5 计算机系统的层次结构

1.5.1 多级计算机系统

  • 计算机不能简单地认为是一种电子设备,而是一个十分复杂的硬、软件结合而成的整体。
  • 它通常由五个以上不同的级组成,每一级都能进行程序设计,如图所示:
    在这里插入图片描述
  • 五级计算机层次系统
    • 第一级是微程序设计级。这是一个实在的硬件级,它由机器硬件直接执行微指令。如果某一个应用程序直接用微指令来编写,那么可在这一级上运行应用程序。
    • 第二级是一般机器级,也称为机器语言级,它由微程序解释机器指令系统。这一级也是硬件级。
    • 第三级是操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广义指令组成,广义指令是操作系统定义和解释的软件指令,所以这一级也称为混合级。
    • 第四级是汇编语言级,它给程序人员提供一种符号形式语言,以减少程序编写的复杂性。这一级由汇编程序支持和执行。如果应用程序采用汇编语言编写时,则机器必须要有这一级的功能;如果应用程序不采用汇编语言编写,则这一级可以不要。
    • 第五级是高级语言级,它是面向用户的,为方便用户编写应用程序而设置的。这一级由各种高级语言编译程序支持和执行。

1.5.2 软件与硬件逻辑等价性

  • 随着大规模集成电路技术的发展和软件硬化的趋势,计算机系统的软、硬件界限已经变得模糊了。因为任何操作可以由软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。
  • 任何操作可以由软件来实现也可以有硬件来实现(设计计算机系统时,应考虑各个方面的因素:价格、速度、可靠性、存储容量、变更周期)
  • 实体硬件机功能的扩大
  • 固件的概念(功能上是软件,形态上是硬件)

总结

  • 计算机系统的 基本概念
    • 构成:硬件和软件
    • 层次结构
  • 计算机系统的基本工作原理
  • 计算机的基本组成部分
    • 五大部件
  • 冯·诺依曼型计算机特点
  • 计算机发展特点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/523534.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

19 KVM管理虚拟机-虚拟机生命周期管理命令

文章目录 19 KVM管理虚拟机-虚拟机生命周期管理命令19.1 概述19.2 前提条件19.3 命令使用说明 19 KVM管理虚拟机-虚拟机生命周期管理命令 19.1 概述 用户可以使用virsh命令工具管理虚拟机生命周期。本节介绍生命周期相关的命令以指导用户使用。 19.2 前提条件 执行虚拟机生…

uboot symbol value ‘‘ invalid for SYS_TEXT_BASE 解决方法

环境 Win10 64位 ubuntu 20.04 虚拟机 VMware Workstation 16 Pro gcc 交叉编译工具链: ARM 官方 gcc version 11.2.1 20220111 NUC980 uboot 版本 :尝试移植到 u-boot-2019.10,官方当前 u-boot 版本为 2016.11 问题描述 升级 u-boot …

ThinkPHP6 模板引擎普通标签中,模板引擎运算符函数,循环标签,判断标签的使用,及一些特殊标签

ThinkPHP6 模板引擎普通标签中,模板引擎运算符函数,循环标签,判断标签的使用,及一些特殊标签 模板引擎支持普通标签和XML标签方式两种标签定义,分别用于不同的目的: 标签类型描述普通标签主要用于输出变量…

Linux 安装 JDK、MySQL、Tomcat(图文并茂)

所需资料 下载 1.1 软件安装方式 在Linux系统中,安装软件的方式主要有四种,这四种安装方式的特点如下: 安装方式特点二进制发布包安装软件已经针对具体平台编译打包发布,只要解压,修改配置即可rpm安装软件已经按照re…

Unity里URP项目的介绍和创建

大家好,我是阿赵,接下来会介绍一下URP的使用 一、URP的介绍 URP(Universal Render Pipeline)通用渲染管线,是Unity在2019.3版本之后推出的一种新的渲染管线。 对比起默认的渲染管线,他的使用上会产生了一些变化,包括…

RS485电路及程序设计

一、电路原理图 图中 A、B 总线接口,用于连接 485 总线。RO 是接收输出端,DI 是发送数据收入端,RE是接收使能信号(低电平有效),DE 是发送使能信号(高电平有效)。RE DE接在一起就是高…

jenkins安装配置--持续集成

目录 1.什么是持续集成 1.1持续集成 Continuous integration ,简称CI 1.2持续集成具有的特点: 1.3持续集成的作用 2.jenkins简介 2.1概述 2.2特点 3.jenkins安装 1.下载Jenkins 2.下载jdk 3.网盘安装包载 4.创建软件安装目录 5.上传jdk和Jen…

C-内存管理

内存管理 堆,栈,静态区 c程序地址空间分布规则: 栈是从高地址向低地址延伸的,后创建的变量,后入栈,那么地址就越小. 静态变量,作用域不变,声明周期发生改变.本质原因是存储位置发生改变.编译器编译的时候放到了全局数据区. #include<stdio.h> #include<stdlib.h>…

虾皮Shopee商品详情接口(item_get-根据ID取商品详情)代码封装

item_get-根据ID取商品详情接口 通过代码封装该接口可以拿到商品标题&#xff0c;商品价格&#xff0c;商品促销信息&#xff0c;商品优惠价&#xff0c;商品库存&#xff0c;sku属性&#xff0c;商品图片&#xff0c;desc图片&#xff0c;desc描述&#xff0c;sku图片&#xf…

基于阿里云服务器安装宝塔Linux面板详细流程(有图)

使用阿里云服务器安装宝塔面板教程&#xff0c;阿里云百科以ECS云服务器CentOS操作系统为例&#xff0c;安装宝塔Linux面板&#xff0c;先远程连接到云服务器&#xff0c;然后执行宝塔面板安装命令&#xff0c;系统会自动安装宝塔面板&#xff0c;安装完成后会返回面板地址、账…

JS数据分组

JS对数据进行分组_js数据分组_柳宁依的博客-CSDN博客 原理没看懂&#xff0c;增加分组显示数据部分。 <html> <head> <style> select { display: block; margin: auto; } table { border-collapse: collapse; margin: auto; } th, td { border: 1px solid b…

“裸奔”时代下,我们该如何有效应对网络攻击、数据泄露和隐私侵犯

随着互联网的普及&#xff0c;越来越多的个人信息被上传到互联网上&#xff0c;而网络攻击、数据泄露和隐私侵犯等问题也日益严重。在这个“裸奔”时代&#xff0c;如何保护我们的网络隐私成为了一项紧迫的任务。本文将介绍一些实用的技巧和工具&#xff0c;帮助我们有效应对网…

不强制存储的ListModel和ComboBoxModel

主方法代码&#xff1a; package com.aynu.layout;import com.aynu.model.NumberComboBoxListModel; import com.aynu.model.NumberListModel;import javax.swing.*; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; import j…

从零开始 Spring Boot 28:资源

从零开始 Spring Boot 28&#xff1a;资源 图源&#xff1a;简书 (jianshu.com) Resource 接口 Spring中的资源被抽象为一个Resource接口&#xff1a; public interface Resource extends InputStreamSource {boolean exists();boolean isReadable();boolean isOpen();boole…

【人像抠图】使用vs2022,onnxruntime框架进行部署(视频和多图片处理)

一、人像抠图的应用场景 1. 图像编辑:在图像编辑软件中,人像抠图是常用操作之一。通过抠图可以将人物从原背景中分离出来,放到新背景中,实现人物换背景的效果。这在电影后期特效、游戏角色置换等领域有很广泛的应用。 2. 视频特效:在视频编辑与特效制作中,人像抠图也是关键技术…

Python的标准库argparse讲解

argparse 是 Python 的标准库之一&#xff0c;用于解析命令行参数。通过 argparse&#xff0c;你可以轻松定义你的脚本或应用程序所需的命令行参数&#xff0c;并从命令行中获取这些参数的值。 import argparse# 创建解析器 parser argparse.ArgumentParser()# 添加命令行参数…

【react 全家桶】高级指引(下)

本人大二学生一枚&#xff0c;热爱前端&#xff0c;欢迎来交流学习哦&#xff0c;一起来学习吧。 <专栏推荐> &#x1f525;&#xff1a;js专栏 &#x1f525;&#xff1a;vue专栏 &#x1f525;&#xff1a;react专栏 文章目录 13【react高级指引&#xff08;下&…

是哟Git时报错OpenSSL SSL_read: Connection was reset, errno 10054

文章目录 修改hosts的ip多尝试解除SSL验证 报错如下所示 遇到这个问题首先可以考虑开魔法或者开魔法加换个网比如开手机热点 解除SSL验证我没有试过, 我就在hosts文件中加上了ip的配置就好了 修改hosts的ip 根据网上的教程, 我试了试修改C盘中hosts文件的GitHub相关访问域名的…

QgsPoint类

在 QGIS 中&#xff0c;QgsPoint 类是用于表示二维或三维点的类。它由 X、Y 和 Z 坐标组成&#xff0c;并且可以带有一个可选的 M 值&#xff08;也称为测量值&#xff09;。以下是 QgsPoint 类的主要参数介绍&#xff1a; x&#xff1a;表示点的横向坐标值。y&#xff1a;表示…

在 Windows 上安装 scoop

一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡&#xff0c;让我们一起学习在在 Windows 上安装 scoop。如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连) 二、 scoop是什么 windows下的安装源搜索工具&#xff0c;有点类似centos下的yum和Ubuntu下的apt。用这个拉下来安装…