当前位置: 首页 > news >正文

【Linux】冯诺依曼体系结构

冯诺依曼体系结构

  • 一、计算机结构体系来源
  • 二、冯诺依曼体系结构
  • 三、冯诺依曼体系结构中的数据流动


一、计算机结构体系来源

研制电子计算机的想法产生于第二次世界大战期间,主要用来进行弹道计算,在"时间就是胜利"的战争年代,迫切需要一台能够快速计算出弹道的机器。在这样的形势背景下,世界上第一台电子计算机ENIAC于1946 年2月14 日被研制出来。但由于 ENIAC 的研制主要是出于军事上的需要,其存在两大缺点:一是没有真正的存储器;二是控制不是自动进行的,每次都需要以人工布线的方式进行,耗时长,故障率高。其运算速度受到了人工数据的输入速度的限制,后期冯.诺依曼对其进行了改进,提出了基于存储程序的概念:

将指令以二进制代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。

当采用程序存储概念以后的计算机,其运算速度得到了明显提升,冯·诺依曼体系结构也渐渐从计算机的发展中脱颖而出,成为了主流的计算机体系结构。

在这里插入图片描述

二、冯诺依曼体系结构

冯诺依曼体系结构由五大设备组成,分别是: 输入设备, 输出设备,运算器, 控制器和存储器,它们之间的关系如下:

  1. 输入设备是负责将数据和程序输入到计算机的设备,将信息转换为机器能识别的形式,即二进制数据,是用户和计算机系统之信息交换的主要装置。常用的输入设备有键盘、鼠标等。
  2. 输出设备负责将计算机处理后的结果输出计算机,主要用于数据的输出,是人与计算机交互的一种部件。通过输出设备,可以将各种计算结果数据或信息通过多种形式表示出来如数字、字符、图像、声音、视频等形式。常用的输出设备有显示器、打印机等。
  3. 运算器是运算逻辑单元,主要负责执行计算机中各种算木运算和逻辑运算操作。
  4. 控制器从存储器设备读取和解析相关指令,比如加减乘除运算指令,然后指挥程序运行。
  5. 存储器是计算机的记忆和存储部件,用来存放程序、数据等信息。计算机中的全部信息包括输入的原始数据、程序软件、经计算机初步加工后的中间运行结果和最终处理结果都有储在存储器中,并在控制器的控制下在指定的位置取出或存入信息。

存储器分为内存储器和外存储器两类。内存储器简称内存,存取速度快、容量小、价格高主要用来暂存CPU中的运算数据。这里冯诺依曼中的存储器是指内存储器。

在这里插入图片描述
其中这里的存储器相当重要,在早期没有存储器时,由于计算机CPU处理速度很快,但是人们的输入效率太低,造成了计算机的工作效率低下,有了内存的存在,我们可以对数据进行预加载,CPU 以后在进行数据计算的时候,就不需要访问外设了,直接从内存中读取就可以了。从而大大提高了计算机的工作效率

注意事项:

  • 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
  • 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
  • 一句话,所有设备都只能直接和内存打交道。

三、冯诺依曼体系结构中的数据流动

这里我们以QQ为例,简单的了解一下在冯诺依曼体系结构下,软件的数据是怎么流动的。

在这里插入图片描述
首先我们打开对话窗,用输入设备键盘进行输入“你好”,输入之后,我们的数据便被加载进了内存,等待CPU的处理,然后CPU从内存中读取待处理的数据,CPU对我们输入的数据进行处理加密后,返回给内存,内存再通过特定的刷新机制输出到输出设备,这里传输到输出设备是两个动作,第一是把你输入的消息刷新显示在你自己的显示器上,第二是把数据通过网卡发送到网络里,经过网络的处理,另一台计算机也从网卡里面拿到数据(这说明网卡即是输入设备又是输出设备),但是拿到的数据暂时还无法使用,需要先加载到内存,然后由,CPU读取数据进行解密处理,解密处理后返回给内存,然后内存将数据传输给输出设备显示器,这样两台电脑就完成了QQ的聊天通讯了。

相关文章:

【Linux】冯诺依曼体系结构

冯诺依曼体系结构一、计算机结构体系来源二、冯诺依曼体系结构三、冯诺依曼体系结构中的数据流动一、计算机结构体系来源 研制电子计算机的想法产生于第二次世界大战期间,主要用来进行弹道计算,在"时间就是胜利"的战争年代,迫切需…...

【小白】git是什么?gitee和git和github的关系?

gitee问题一、git是什么?gitee和git和github的关系?问题二、能不能通俗易懂的说?问题一、git是什么?gitee和git和github的关系? Git是一种版本控制系统,用于管理文件的版本、记录文件的修改历史以及协同开…...

UDS 14229 -1 刷写34,36,37服务,标准加Trace讲解,没理由搞不明白

🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】🍅 玩转CANoe&…...

【Android -- 软技能】聊聊程序员的软技能

什么是软技能? 所谓软技能,就是相对于「硬技能」而言的技能,对于程序员来说,「硬技能」就是计算机专业技术能力,软技能则是专业之外的所有技能,包括职业规划能力、处理人际关系能力、专业态度、做事的方式…...

【Java学习笔记】27.Java 抽象类

Java 抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类除了不能实例化对象…...

Vite4 + Vue3 + vue-router4 动态路由

动态路由,基本上每一个项目都能接触到这个东西,通俗一点就是我们的菜单是根据后端接口返回的数据进行动态生成的。表面上是对菜单的一个展现处理,其实内部就是对router的一个数据处理。这样就可以根据角色权限或者一些业务上的需求&#xff0…...

MS(mbed l432KC)-->速通9个lab详细解析[5]

Exercise5 这次实验我们将正式接触到一个相对来说有点意思并且有点牌面的传感器了----->数码管。数码管是我们生活中非常常见的一种传感器,比如计时器,秒表,以及数字显示大屏幕,其实原理都跟数码管差不多。如果是没有单片机基础的同学,突然一下接触到相对来说比较常见…...

XXE漏洞复现

目录XML基础概念XML数据格式DTD基础定义DTD作用分类DTD实体实体的分类DTD元素XXE漏洞介绍实操如何探测xxe漏洞XML基础 概念 什么是XML 是一种可扩展标记语言 (Extensible Markup Language, XML) ,标准通用标记语言的子集,可以用来标记数据、定义数据类型…...

初识C++需要了解的一些东西(2)

😁关注博主:翻斗花园第一代码手牛爷爷 😃Gitee仓库:牛爷爷爱写代码 目录🌍内联函数🌕内联函数概念🌖内联函数特性🌓auto关键字(C11)🌞类型别名⭐️auto简介☀️auto的使…...

全国程序员薪酬大曝光!看完我酸了····

2023年,随着互联网产业的蓬勃发展,程序员作为一个自带“高薪多金”标签的热门群体,被越来越多的人所关注。在过去充满未知的一年中,他们的职场现状发生了一定的改变。那么,程序员岗位的整体薪资水平、婚恋现状、职业方…...

改进YOLO系列 | CVPR2023最新Backbone | FasterNet 远超 ShuffleNet、MobileNet、MobileViT 等模型

论文地址:https://export.arxiv.org/pdf/2303.03667v1.pdf 为了设计快速神经网络,许多工作都集中在减少浮点运算(FLOPs)的数量上。然而,作者观察到FLOPs的这种减少不一定会带来延迟的类似程度的减少。这主要源于每秒低浮点运算(FLOPS)效率低下。并且,如此低的FLOPS主要…...

Nginx常见用法

一、Niginx是什么? Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Niginx是一款轻量级的web服务器/反向代理器,Nginx是高性能的HTTP和 反向代理的web服务器,处理高并发的能力十分强大&#xff0c…...

MySQL存储引擎和日志管理

MySQL存储引擎和日志管理一、存储引擎的概念1、Myisam的特点2、Myisam表支持 3 种不同的存储格式3、innodb4、死锁5、查看系统支持的存储引擎6、查看表使用的存储引擎7、修改存储引擎8、通过 create table 创建表时指定存储引擎二、日志管理1、错误日志2、通用查询日志3、慢查询…...

Arduino 驱动DS1307时钟模块使用介绍

Arduino 驱动DS1307时钟模块使用介绍 🔖DS1307时钟模块 📍DS1307时钟模块资料 https://pan.baidu.com/s/1mtXruLAktZj7UDhFD54BNw 提取码:d9xh 📋模块简介:DS1307 I2C实时时钟芯片(RTC) 24C32 32K I2C EEPROM存储器 解决DS1307带备用电池不能读写的问题。 充满电后,…...

为什么 Python 没有 main 函数?

众所周知,Python中没有所谓的main函数,但是网上经常有文章提到“ Python的main函数”和“建议编写main函数”。 其实,可能他们是想模仿真正的main函数,但是许多人都被误导(或误解),然后编写了非…...

【无标题】使用Bibtex4word 整理毕业论文参考文献

Bibtex4Word使用一览需要安装和配置的软件texLiveBibtex4word需要安装和配置的软件 texLive 这个就不多说啦,大家自己找教程安装吧,因为我之前装过这一系列所以就不再来一遍了,但是有两条配置需要注意! 添加环境变量 key: BIB…...

19--网络API(java版)

什么是网络API在一个网站里面发起https请求是很常见的,但是,由于微信小程序是腾讯内部的产品,不能直接打开一个外部的链接,例如,您在微信小程序里面无法直接打开网站,但是,在做小程序开发的时候…...

ElasticSearch - 分片内部原理之动态更新索引、近实时搜索、持久化变更、段合并

文章目录01. ElasticSearch 倒排索引是什么?02. ElasticSearch 倒排索引为什么是不可变的?03. ElasticSearch 索引文档原理?04. ElasticSearch 如何动态更新索引?05. ElasticSearch 文档的新增、删除、更新?06. Elasti…...

模拟数据采集卡之ADCTDC 模拟时间/数字转换器组合应用选型指南

简介 产品组合包括一系列多功能时间到数字转换器(TDC)和模数转换器(ADC)。我们的许多客户的应用场景依赖于对飞行时 间(TOF)的测量。该系列产品非常适合用于质谱系统(TOF-MS),光学相干断层扫描(OCT),荧光寿命成像显微镜(FLIM), 时间相关单光子…...

R语言编程基础

文章目录安装运算符判断函数递归安装 根据自己的操作系统,下载R语言环境后,安装,并将安装路径加入到环境变量,即可从命令行进入R环境 >rR version 4.2.2 (2022-10-31 ucrt) -- "Innocent and Trusting" Copyright …...

2023-03-15:屏幕录制并且显示视频,不要用命令。代码用go语言编写。

2023-03-15:屏幕录制并且显示视频,不要用命令。代码用go语言编写。 答案2023-03-15: 使用moonfdd/ffmpeg-go和moonfdd/sdl2-go库来实现屏幕录制并显示视频,大体流程如下: 1.使用libavdevice库中的AVInputFormat&…...

STM32外设-DMA

1. 简介 DMA(Direct Memory Access)—直接存储器存取,是单片机的一个外设,它的主要功能是用来搬数据,但是不需要占用 CPU,即在传输数据的时候, CPU 可以干其他的事情,好像是多线程一样。数据传输支持从外设…...

【面试题】面试官:如果后端给你 1w 条数据,你如何做展示?

最近一位朋友参加阿b的面试,然后面试官问了她这个问题,我问她咋写的,她一脸淡定的说:“虚拟列表。”大厂面试题分享 面试题库前后端面试题库 (面试必备) 推荐:★★★★★地址:前端面…...

第十二届蓝桥杯省赛详解

试题A:空间 1B是8位,32位二进制数占用4B空间,1MB2^10KB2^20B 那么可以存放32位二进制数的个数为256*2^20*8/3267108864 试题B:卡片 分析:因为数据只有2021,所以直接模拟即可 结果为:3181&…...

ssh创建秘钥对

1. 使用ssh-keygen 生成秘钥对 [root6zix89b87qmvuv ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): 按回车键或设置密钥的存储路径 Enter passphrase (empty for no passphrase): 按回车键或设置密钥的存…...

JS中sort()方法返回值?

参考 https://segmentfault.com/q/1010000043489928 精辟解释 就是说 sort() 会修改原数组项的排序,sort() 结束后会返回一个数组结果,这个结果其实就是原数组。并不是说会返回一个新的数组。 原理讲解 JS 分为栈内存和堆内存,栈内存可以…...

07从零开始学Java之如何正确的编写Java代码?

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者前言在上一篇文章中,壹哥带领大家开始编写了第一个Java案例,在我们的cmd命令窗口中输出了”Hello World“这…...

Python学习笔记14:网络编程

网络编程 几个网络模块 模块socket # 简单的服务器 import socket s socket.socket() host socket.gethostname() port 1234 s.bind((host, port))s.listen(5) while True: c, addr s.accept() print(Got connection from, addr) c.send(Thank you for connecting)c.…...

初入了解——什么是VUE

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。座右铭:海不辞水,故能成其大;山不辞石,故能成其高。个人主页:小李会科技的…...

代码规范(C++)

1.命名规范 1.目录/文件 字母、数字、下划线构成,不同单词用下划线隔开。 2.函数/接口 小驼峰命名法。 3.命名空间 字母、数字、下划线构成,不同单词用下划线隔开,但是尽量只使用一个单词。 4.结构体/类 大驼峰命名法,不包…...

WordPress版块隐藏/搜索引擎优化的含义

背景 早期互联网只是用来访问查看,不需要关心谁在访问查看。HTTP是一种无状态的协议,每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,为了标示用户,就出现了Cookie,而Cookie、Token、JWT 都是…...

网站健设推广产品多少钱/山东百搜科技有限公司

0、首先得理解MP3格式文件的结构 简单的就是 MP3 文件大体分为三部分:TAG_V2(ID3V2),音频数据,TAG_V1(ID3V1) 参考此博客:点击打开链接 ID3V1的结构是: 表1:ID3V1结构 ------------------------------…...

网站开发后台的问题/b2b平台是什么意思

--------首先来看看ip、uv和pv的定义---------- PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次。 UV(独立访客):即Unique Visitor,访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只被计算一次。…...

做微信平台网站需要多少钱/微博推广方式

实现同一个接口的不同的类,根据调用总和类中静态类型(返回值同接口)方法,(传入不同值),根据if else判定该new哪一个实现类.从而使用不同的接口的实现方法. 将编程看作是一门艺术,而不单单是个技术。 敲打的英文字符是我的黑白琴键, 思维图纸画出的是我编…...

微信可以做网站吗/全国最新的疫情数据

Excel:常见的错误信息以及解决方法(转)在Excel中建立了一张工作表,往往希望所有数据都是正确的。但是,基本上这是不可能的!而偏偏计算机是个“较真”的家伙,如果你不改正错误,它会就此罢工,不再…...

网站流量做那些好/seo外包顾问

Windows XP是一款经典的操作系统,同时也是一款很老的操作系统,不过尽管如此,还是有一批用户在使用XP系统,所以发行一些软件的时候还是要测试在XP系统中能否运行,这时候我们就可以借助VirtualBox虚拟机安装一个XP系统来…...