计算机组成原理之计算机系统概论、计算机的发展史、系统总线,三章开篇讲

news2025/1/13 19:35:23

第一章-计算机系统概论

1计算机系统简介

现代计算机的多态性

把感应器嵌入和装备到电网、铁道、桥梁、隧道、公路、建筑、供水系统、大坝、油气管道等各种物体中,并且被普遍连接,形成“物联网”,然后将“物联网”与现有的网络整合起来,实现人类社会与物理系统的整合,形成智慧地球。

1.1.计算机软硬件概念

uTools_1694416642095

系统软件:用来管理整个计算机系统,其中有语言处理程序、操作系统、服务性程序、数据库管理系统、网络软件。

应用软件:按任务需要编制成的各种程序。

1.2.计算机系统的层次结构

系统复杂性管理的方法

抽象:对于一个过程或者一件制品的某些细节有目的的隐藏,一边把其他方面、细节或者结构表达得更加清楚。

uTools_1694418639408

uTools_1694418765364

计算机体系结构:程序员所见到的计算机系统的属性概念性的结构与功能特性(指令系统、数据类型、寻址技术、I/O机理)

计算机组成:实现计算机体系结构所体现的属性。(具体指令的实现)

2.计算机的基本组成

2.1.冯·诺依曼计算机的特点

  1. 计算机由五大部件组成

  2. 指令和数据以同等的地位存于存储器,可按地址寻访

  3. 指令和数据用二进制表示

  4. 指令由操作码和地址码组成

  5. 存储程序

  6. 以运算器为中心

uTools_1694419654877

实现表示数据、虚线表示控制指令

2.2.计算机硬件框图

以存储器为中心的计算机硬件框图

uTools_1694419889025

现代计算机硬件框图

uTools_1694419944210

uTools_1694419979765

系统复杂性管理的方法

层次化(Hierachy)将被设计的系统划分为多个模块或子模块

模块化(Modularity)有明确定义(well-defined)的功能和接口

规则性(regularity)模块更容易被重用

2.3.计算机的工作步骤

上机前的准备

建立数学模型 u = Um·Sinwt

确定计算的方法:

uTools_1694421063209

编制解题程序:程序——运算的全部步骤、指令——每一个步骤

编程举例

计算ax2+bx+c

取x至运算器中

乘以x在运算器中

乘以a在运算器中

存ax2在存储器中

取b至运算器中

乘以x在运算器中

加ax2在运算器中

加c在运算器中

指令格式举例

uTools_1694421621897

指令和数据都是保存在存储器中的。

2.4.存储器的基本组成

存储体 - 存储单元 - 存储元件

存储单元 存放一串二进制代码

存储字 存储单元中二进制代码的结合

存储字长 存储单元中二进制代码的位数,每个存储单元赋予一个地址

按地址寻访

MAR 存储器地址寄存器 反映存储单元的个数

MDR 存储器数据寄存器反映存储字长

2.5.运算器的基本组成

uTools_1694422368176

ACCMQX
加法被加数和加数
减法被减数差减数
乘法乘积高位乘积低位被乘数
除法被除数除数

加法操作过程

uTools_1694422880612

减法操作过程

uTools_1694422987890

乘法操作过程

uTools_1694423129470

除法操作过程

uTools_1694423261913

2.6.控制器的基本组成

完成一条指令:取指令,分析指令、执行指令

PC存放当前预执行指令的地址,具有计数功能(PC)+1 -> PC

IR存放当前预执行的指令

uTools_1694511409516

主机完成一条指令的过程

uTools_1694615575331

MAR和MDR都是寄存器,通常集成在CPU的芯片中,它们是存储器联系外部的窗口,或称接口寄存器。

MAR,全称Memory Address Register,主存地址寄存器,用来保存数据被传输到的位置的地址或者数据来源位置的地址。在读取操作时,外部会将地址传入MAR中,MAR会根据地址在CU的控制下,找到存储体中对应的存储单元并将数据拷贝到MDR中(先读取到MDR),随后MDR在CU的控制下将数据拷贝到外部需要的位置(再由MDR将数据传递给外部)。

MDR,全称Memory Data Register,主存数据寄存器,用来保存要被写入地址单元或者从地址单元读入的数据。在写入(存数)操作时,外部会将地址传入MAR中,MAR会将地址传递给存储体,告知存储器接下来要往地址对应的存储单元写入数据,随后外部会将数据拷贝至MDR(先传递给MDR),再由MDR将数据传递给存储体(再写入到存储单元)。

具体实现

将程序通过输入设备送至计算机

程序首地址->PC

启动程序运行

取指令 PC -> MAR ->M ->MDR ->IR

分析指令 OP(IR) ->CU

执行指令 Ad(IR) ->MAR -> M -> MDR -> ACC

3.计算机硬件的主要技术指标

1.机器字长

CPU一次能处理数据的位数与CPU中的寄存器位数有关

2.运算速度

主频

核数,每个核支持的线程数

吉普森法 一种利用滤波器和模式匹配算法来对输入信号进行滤波和预测的方法,该方法可以在输入信号中识别和提取特定的模式或者特征。这种方法在处理各种信号时都有广泛的应用,比如处理音频信号、图像信号等。

CPI 执行一条指令所需时钟周期

MIPS 每秒执行百万条指令

FLOPS 每秒浮点运算次数

3.存储容量

存放二进制信息的总位数

主存容量:存储单元个数 x 存储字长或字节数

第二章-计算机的发展史

目录

第一章-计算机系统概论

1计算机系统简介

1.1.计算机软硬件概念

1.2.计算机系统的层次结构

2.计算机的基本组成

2.1.冯·诺依曼计算机的特点

2.2.计算机硬件框图

2.3.计算机的工作步骤

2.4.存储器的基本组成

2.5.运算器的基本组成

2.6.控制器的基本组成

3.计算机硬件的主要技术指标

第二章-计算机的发展史

1.计算机的产生和发展

2.微型计算机的出现和发展

3.软件技术的兴起和发展

4.计算机的应用

第三章-系统总线

1.总线的基本概念

2.总线的分类

3.总线特性及性能指标

4.总线结构


1.计算机的产生和发展

1946年 美国ENIAC 十进制运算

18000 多个电子管

1500 多个继电器

150 千瓦

30 吨

1500 平方英尺

5000 次加法/秒

技术发展

电子技术的发展

计算机体系结构技术的发展

uTools_1694677504107

IBM System / 360

2.微型计算机的出现和发展

uTools_1694678208529

Inter公司的典型微处理器

uTools_1694678231115

Moore定律

Inter公司的缔造者之一Gordon Moore提出,微芯片上集成的晶体管数目每三年翻两番

3.软件技术的兴起和发展

各种语言

机器语言 面向机器

汇编语言 面向机器

高级语言 面向问题

FORTRAN 科学计算和工程计算

PASCAL 结构化程序设计

C++ 面向对象

Java 适应网络环境

系统软件

语言处理程序 汇编程序、编译程序、解释程序

操作系统 DOS、UNIX、Windows、Linux、Kylin Linux

软件发展的特点

  1. 开发周期长

  2. 制作成本昂贵

  3. 检测软件产品质量的特殊性

软件是程序以及开发、使用和维护程序所需要的所有文档。

4.计算机的应用

  1. 科学技术和数据处理

  2. 工业控制和实时控制

  3. 网络技术 电子商务、网络教育、敏捷制造

  4. 虚拟现实

  5. 办公自动化和管理信息系统

  6. CAD/CAM/CIMS

  7. 多媒体技术

  8. 人工智能

芯片集成度的三方面限制

  1. 芯片集成度受物理极限的制约

  2. 按几何级数递增的制作成本

  3. 芯片的功耗、散热、线延迟

光计算机

利用光子取代电子进行运算和存储

DNA生物计算机

通过控制DNA分子间的生化反应

量子计算机

利用原子所具有的量子特性

第三章-系统总线

1.总线的基本概念

总线是连接各个部件的信息传输线,是各个部件共享的传输介质。

总线上信息的传输

串行

串行(Serial)是指任务按照顺序一个一个执行,每个任务在执行完后才能执行下一个任务。这种方式的优点是简单且易于控制,但在处理大量数据或多个任务时可能会比较耗时。比如,如果有一个需要打印100份文件的任务,串行方式需要逐份打印,这会花费大量的时间。

并行

并行(Parallel)是指多个任务同时进行,即多个任务在同一时刻进行,彼此之间相互独立。这种方式的优点是可以在短时间内处理多个任务或大量数据,特别是在需要处理的任务数量非常大时,可以大大提高效率。比如,如果有一个需要将图片转换成PDF格式的任务,使用并行方式可以同时启动多个转换任务,每个任务处理不同的图片,这样可以大大提高转换速度。

  1. 单总线结构框架图

uTools_1694681297514

  1. 面向CPU的双总线结构框架图

uTools_1694681512184

  1. 以存储器为中心的双总线结构框图

uTools_1694681835048

三总线结构的由宜兴市

2.总线的分类

  1. 片内总线 芯片内部的总线

  2. 系统总线 计算机各部件之间的信息传输线

    数据总线 双向与机器字长、存储字长有关

    地址总线 单向 与存储地址、I/O地址有关

    控制总线 有出有入 存储器读、存储器写、总线允许、中断确认

  3. 通信总线 用于计算机系统之间或计算机与其他系统(如控制仪表盘、移动通信)之间的通信

  4. 传输方式 串行通信总线 并行通信总线

3.总线特性及性能指标

总线物理实现

uTools_1694861478033

总线特性

  1. 机械特性 尺寸、形状、管脚数及排列顺序

  2. 电气特性 传输方向和有效的电平范围

  3. 功能特性 每根传输线的功能:地址、数据、控制

  4. 时间特性 信号的时序关系

总线的性能指标

  1. 总线宽度 数据线的根数

  2. 标准传输率 每秒传输的最大字节数(MBps)

  3. 时钟同步/异步 同步和不同步

  4. 总线复用 地址线与数据线复用

  5. 信号线数 地址线、数据线和控制线的总和

  6. 信号控制方式 突发、自动、仲裁、逻辑、计数

  7. 其他指标 负载能力

总线标准

ISA、EISA、VESA(LV-BUS)、PCI、AGP、RS-232、USB

总线标准数据线总线时钟带宽
ISA168MHz(独立)16MBps
EISA328MHz(独立)33MBps
VESA(VL-BUS)3232MHz(CPU)132MBps
PCI32 6433MHz(独立) 66MHz(独立)132MBps 528MBps
AGP3266.7MHz(独立) 133MHz(独立)266MBps 533MBps
RS-232串行通信总线标准数据终端设备(计算机)和数据通信设备(调制解调器)之间的标准接口
USB串行接口总线标准普通无屏蔽双绞线带屏蔽双绞线最高1.5MBps(USB1.0) 12MBps(USB1.0) 480MBps(USB2.0)

4.总线结构

单总线结构

image-20230916193547552

多总线结果

双总线结构:

uTools_1694864231362

uTools_1694864325372

三总线结构

uTools_1694864231362

三总线结构的又一形式

uTools_1694867873772

四总线结构

uTools_1694869291466

总线结构举例

1.传统微型机总线结构

uTools_1694870735643

2.VL-BUS局部总线结构

uTools_1694870798564

3.PCI总线结构

uTools_1694870876801

4.多层PCI总线结构

uTools_1694871121759

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

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

相关文章

无涯教程-JavaScript - ACOT函数

描述 ACOT函数以0至π之间的弧度(以弧度为单位)返回数的反正切或反余切的主值。 语法 ACOT (number)争论 Argument描述Required/OptionalNumberNumber is the cotangent of the angle you want. This must be a real number.Required Notes 要将输出从弧度转换为度, 使用D…

【计算机视觉 | 目标检测】YOLO-NAS的介绍以及如何使用?(含源代码)

文章目录 一、介绍1.1 亮点1.2 方案简介1.3 训练简介 二、使用案例 一、介绍 Github 仓库: https://github.com/Deci-AI/super-gradients/blob/master/YOLONAS.md1.1 亮点 参考QARepVGG,该方案引入了QSP与QCI模块以同时利用重参数与8-bit量化的优化&a…

C语言练习题解析(2)

💓博客主页:江池俊的博客⏩收录专栏:C语言刷题专栏👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路💻代码仓库:江池俊的代码仓库🎉欢迎大家点赞👍评论📝收藏⭐ 文…

d3dx9_43.dll文件缺失的修复方法有哪些?4个方法快速修复d3dx9_43.dll

最近有很多小伙伴反映说他的电脑经常出现一个问题,那就是d3dx9_43.dll文件缺失了,然后一些程序都打不开,他们都是一脸懵逼,不知道怎么去处理这个问题,今天小编就要来给大家详细的说说这方面,d3dx9_43.dll文…

小谈设计模式(3)—策略模式

小谈设计模式(3)—策略模式 专栏介绍专栏地址专栏介绍 策略模式主要角色环境(Context)抽象策略(Strategy)具体策略(Concrete Strategy)角色总结 核心思想封装算法定义抽象策略使用环…

Minio入门系列【3】MinIO Client使用详解

1 简介 简称mc,是minio服务器的客户端,对ls,cat,cp,mirror,diff,find等UNIX命令提供了一种替代方案,它支持文件系统和兼容Amazon S3的云存储服务(AWS Signature v2和v4&…

nginx知识点详解:反向代理+负载均衡+动静分离+高可用集群

一、nginx基本概念 1. nginx是什么,做什么事情? Nginx是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强。Nginx转为性能优化而开发,能经受高负载考验。支持热部署,启动容易,运…

(三十二)大数据实战——Maxwell安装部署及其应用案例实战

前言 Maxwell是一个开源的MySQL数据库binlog解析工具,用于将MySQL数据库的binlog转换成易于消费的JSON格式,并通过Kafka、RabbitMQ、Kinesis 等消息队列或直接写入文件等方式将其输出。本节内容主要介绍如何安装部署Maxwell以及如何使用Maxwell完成数据…

通用商城项目(下)

记录一些踩坑的地方,以及理顺一些思路。 通过管理系统页面,完成商品属性分组和商品属性(基本属性)关联维护 属性表 与 属性组表 的功能完善:显示属性组与属性表的一对多关系 前端 1. 引入组件,是否显示使…

qgroundcontrol源码Andriod平台编译

1.下载QGC(qgroundcontrol)源码: 2.安装Qt5.15.2 3.配置Android平台工具集: 4.打开QGC项目文件: 5.安卓工程输出路径: 6.创建签名文件: 7.右击工程,然后选择Build 8.修改生成工程gradle.properties(Global Properties)增加下面内容: org.gradle.jvmargs-Xmx1536M --add-export…

UGNX配置许可服务器

UG客户端配置许可服务器,第一次安装完成或修改成其他许可服务器  打开菜单栏,找到Siemens NX目录->许可证工具->许可工具  切换到环境设置,设置许可服务器,点击编辑,弹出编辑框输入端口服务器IP。  输入…

[字符串和内存函数]strcat和strncat的区别

CPlus中对strcat的介绍 /* strcat example */ #include <stdio.h> #include <string.h>int main () {char str[80];strcpy (str,"these ");strcat (str,"strings ");strcat (str,"are ");strcat (str,"concatenated.");p…

进程间通信(IPC)的方法:共享内存

共享内存(shared memory)是可用IPC技术中最快的一种。一旦内存被映射到共享内存区域的进程的地址空间中&#xff0c;在进程之间传递数据时就不会发生内核(kernel)参与。然而&#xff0c;在共享内存区域存储和提取数据时&#xff0c;进程之间需要某些形式的同步(例如互斥锁、条件…

Spring Boot的魔法:构建高效Java应用的秘诀

文章目录 1. 自动配置&#xff08;Auto-Configuration&#xff09;2. 起步依赖&#xff08;Starter Dependencies&#xff09;3. 内嵌Web服务器&#xff08;Embedded Web Server&#xff09;4. 外部化配置&#xff08;Externalized Configuration&#xff09;5. Spring Boot Ac…

每日一题 213. 打家劫舍 II

难度&#xff1a;中等 思路&#xff1a; 首先不看成环&#xff0c;只是当作列表&#xff0c;那么对于第 i 间房&#xff0c;到 i 为止的最高偷窃金额为 f(i) max(f(i - 1), f(i - 2) nums[i])分析递推关系第一点&#xff0c;不管 i - 2 处的房子是否偷窃&#xff0c;i 处的…

【基础篇】ClickHouse 表结构设计

文章目录 1. ClickHouse 表结构设计1. 表的创建与标准SQL的差异1. 创建普通表2. 创建物化视图3. 创建分布式表 2. 表引擎1. MergeTree:2. Log:3. Memory:4. Distributed:5. Kafka:6. MaterializedView:7. File和URL: 3. MergeTree 家族3.1. MergeTree:3.2. ReplacingMergeTree:…

Nacos单机启动的两种方式

说明&#xff1a;直接双击nacos的启动脚本&#xff0c;默认是集群&#xff08;cluster&#xff09;的方式&#xff1b; 需要单机启动&#xff0c;有以下两种方式&#xff1b; 方式一&#xff1a;命令行 在当前目录打开命令窗口&#xff0c;输入以下命令启动nacos startup.…

jdk1.8堆内存学习

jdk1.8堆内存启动时控制参数图解 堆大小年轻代&#xff08;Young Generation&#xff09;年老代&#xff08;Old Generation&#xff09; GC相关 -Xnoclassgc&#xff1a;关闭JVM垃圾回收功能 -XX:UseSerialGC&#xff1a;使用Serial垃圾收集器&#xff0c;单线程串型收集器&…

Linux安装包 | Git使用 | NFC搭建

dpgt使用 当谈到基于 Debian 的操作系统中的软件包管理工具时&#xff0c;dpkg 是一个重要的工具。它是 Debian 系统中用于安装、升级、配置和卸载软件包的命令行工具。以下是对 dpkg 的详细介绍&#xff1a; 软件包管理&#xff1a;dpkg 可以管理系统中的软件包。它可以安装单…

Acwing 829. 模拟队列

Acwing 829. 模拟队列 题目描述思路讲解代码展示 题目描述 思路讲解 队列是先进先出&#xff0c;类比排队买饭 代码展示 #include <iostream>using namespace std;const int N 100010;int m; int q[N], hh, tt -1;int main() {cin >> m;while (m -- ){string …