冯诺依曼计算机体系[通俗易懂]

冯诺依曼计算机体系1.存储器(指的是内存与外存)操作系统内核可以直接其中内存被分为用户空间与内核空间。

大家好,又见面了,我是你们的朋友全栈君。

冯诺依曼计算机体系[通俗易懂]

冯诺依曼计算机体系

1.存储器(指的是内存与外存)

其中内存被分为用户空间内核空间。

操作系统的核心是内核,与其他应用程序相独立,拥有更高的权限。能够访问受保护的内存空间,也拥有直接访问底层硬件设施的权限,因此需要将内核保护起来。操作系统将内存空间分为了用户空间和内核空间,内核空间中的数据与代码拥有更高的权限。内存访问的相关硬件在进程运行期间会进行访问管理,使用户空间的进程不能直接读写内核空间中的内存。

2.CPU

冯诺依曼计算机体系[通俗易懂]

cpu的功能:

1,程序控制:控制程序顺序执行。

2,操作控制:将操作信号送到对应的部件。

3,时间控制:控制操作信号出现的时间,持续时间,出现的顺序。

4,数据处理:对数据进行算术逻辑运算。

5,中断控制:对出现的异常等情况进行中断。

cpu包含运算器,控制器。

运算器:为计算机提供算术运算,逻辑运算及逻辑测试。

包含了算术逻辑单元(ALU),累加寄存器(AC),数据缓冲寄存器(DR),状态条件寄存器(程序状态字PSW)。

1.算术逻辑单元

负责处理数据,实现数据的算术逻辑运算。

2.累加寄存器

是一种通用寄存器,为ALU提供工作区。在运算器中至少存在一个,用于存放ALU的计算结果。

3.数据缓冲寄存器

作为CPU,存储器,及其他设备数据传输的中继站及缓存。

4.状态条件寄存器

存储着cpu经过算术运算和逻辑运算或逻辑测试的结果建立的条件码内容。分为状态标志,控制标志。

控制器:控制CPU的整体工作,决定了计算机运行期间的自动化,不仅要保证程序的正确运行,而且要处理出现的异常情况。

一般包含了指令控制逻辑,时序控制逻辑,总线控制逻辑,中断控制逻辑。

指令控制逻辑:

取指令,指令译码,按照指令操作码进行控制

1.指令寄存器:

存储当前执行的指令,执行的指令从内存中提取到缓存内,之后从缓存送到指令寄存器中。

2.程序计数器

在程序执行前,将程序的开始地址送入程序计数器中,该地址为程序加载到内存中时生成。在执行指令时,CPU会自动更新PC,使PC始终指向下一个执行指令。

3.地址寄存器

储存CPU当前使用的内存单元地址。

4.指令译码器

指令分为操作码与地址码,指令译码器将操作码进行分析并解释,并将具体的控制信号发送给操作控制器。

时序控制逻辑:

为每个指令提供时间顺序的控制信号。

总线控制逻辑:
提供为多个功能部件服务的信息通路的控制电路。

中断控制逻辑:

控制各种中断请求,并将各种请求按照高低的顺序排序,交给CPU处理。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128837.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月15日 下午4:40
下一篇 2022年4月15日 下午5:00


相关推荐

  • 开关量电压转换电路

    开关量电压转换电路单片机的I/O口承受输入电压一般是-5V到 +5V,如果一个开关接的距离比较远,就容易受到线路干扰、线缆本身的电阻率影响导致MCU无法识别。虽然MCU的I/O的输入是“高阻抗”的,但是还是很难确保远距离后的影响。  左边可以输入0~12V,右边可以很稳定的输出0~5V

    2022年5月5日
    43
  • jqprint 分页打印_Jqprint实现页面打印

    jqprint 分页打印_Jqprint实现页面打印好些项目需要实现页面打印 特别是一些后台管理类系统 下面介绍一款轻量级的打印插件 1 实现页面打印要引入 jQuery 和 Jqprint 点击下载 Jqprint 插件 2 HTML 代码 testtesttest JavaScrip

    2026年3月19日
    2
  • Python在线和离线安装第三方库

    Python在线和离线安装第三方库Windows 环境 1 离线安装首先在线搜索并下载你需要的第三方库 网址 https pypi org project 安装 whl 包 pipinstall whl 前提是要安装好 pip 和 wheel 安装 tar gz 包 cd 到解压后路径 pythonsetup pyinstall 安装 pip 和 wheel 都可以参照这种方法 命令窗口

    2026年3月27日
    2
  • RANSAC算法MATLAB实验

    RANSAC算法MATLAB实验RANSAC 是 RANdomSAmple 随机抽样一致 的缩写 它可以从一组包含 局外点 的观测数据集中 通过迭代方式估计数学模型的参数 它是一种不确定的算法 它有一定的概率得出一个合理的结果 为了提高概率必须提高迭代次数 该算法最早由 Fischler 和 Bolles 于 1981 年提出 nbsp nbsp nbsp RANSAC 的基本假设是 1 数据由 局内点 组成 例如 数据的分布可以

    2026年3月17日
    1
  • 1192啥意思_有向图的拓扑排序算法

    1192啥意思_有向图的拓扑排序算法由于无敌的凡凡在2005年世界英俊帅气男总决选中胜出,Yali Company总经理Mr.Z心情好,决定给每位员工发奖金。公司决定以每个人本年在公司的贡献为标准来计算他们得到奖金的多少。于是Mr.Z下令召开 m 方会谈。每位参加会谈的代表提出了自己的意见:“我认为员工 a 的奖金应该比 b 高!”Mr.Z决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位员工奖金最少为100元,且必须是整数。输入格式第一行包含整数 n,m,分别表示公司内员工数以及参会代表数。接下来 m

    2022年8月9日
    9
  • java中的基本数据类型一定存储在栈中吗?

    java中的基本数据类型一定存储在栈中吗?首先说明,”java中的基本数据类型一定存储在栈中的吗?”这句话肯定是错误的。下面让我们一起来分析一下原因:基本数据类型是放在栈中还是放在堆中,这取决于基本类型在何处声明,下面对数据类型在内存中的存储问题来解释一下: 一:在方法中声明的变量,即该变量是局部变量,每当程序调用方法时,系统都会为该方法建立一个方法栈,其所在方法中声明的变量就放在方法栈中,当方法结束系统会释放方法栈,其对应在该方法中声明的变量随着栈的销毁而结束,这就局部变量只能在方法中有效的原因 在方法中…

    2022年6月13日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号