P2存储程序原理
2022/1/8 22:06:42
本文主要是介绍P2存储程序原理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
- 教学目标:理解典型程序在计算机硬件中工作过程 了解计算机基本的组成构件
- 程序数据在硬件中的流动过程
- 阅读书籍《Computer organization and Design》第一章第三节
存储程序思想
1945年冯-诺依曼提出存储程序思想
例如:+ - = % 这些操作视为指令 程序用指令控制物理硬件 进行运算
程序是一个有序的指令集合 存储程序思想 程序和要处理的数据以二进制的形式放在存储器中 运算器执行指令 把数据从存储器取出,执行的结果再放入存储器中 这也为计算机自动计算打下了一个底子 也区别了计算机和计算器的不同
运算器:对二进制数据进行算术运算和逻辑运算,由运算器和寄存器组成
存储器:存放数据 程序 和中间结果由记忆原件和电路组成
控制器:统一指挥和控制程序的运行,协调各个部件工作
输入设备:向计算机输入原始数据和规定的程序,讲信息转换为机器可以识别的(编码)
输出设备:把得到的结果01100110 转换为人能看懂的数据 方便使用
计算机本身只能处理数字化数据进行处理010101110110
冯-诺依曼计算机特点
- 采用二进制来表示机器指令和数据
计算机中有大量的电子元件 用电来表示两个基本状态很容易 通电断电 开机关机 状态很容易切换 也最稳定
二进制编码、计算和运算规则都比较简单用开关电路还实行方便 能通过逻辑店门实现算术运算
0表示false 1表示true 这让它不仅可以做算术运算还可以做逻辑运算
- 硬件系统有 运算器、控制器、存储器、输入设备、和输出设备、五大部分组成
程序和数据先存放在存储器中,按照地址访问存储器的数据
操作时根据程序指令执行顺序,从存储器中取出指令或数据,由控制器解释执行 运算器完成运算 现在计算机还是这样运行的
计算机内部都有什么
个人计算机由主机和外设(键盘鼠标)组成 主机中包含多个电路板 主板 主板上面有很多集成电路 每个集成电路有若干个模块 模块里有成千上万的单元 每个单元里有若干个电路 每个电路实现基本的逻辑运算 传输的信息用二进制编码表示(计算机可真复杂)
处理器(Processor/cpu Central Processing Unit)
组成:控制单元+数据通路
控制单元(Control unit):对计算机发送过来的指令进行译码
数据通路(Datapath)
功能:完成指令的执行
核心:算术逻辑运算部件(ALU-Arithmetic Logic Unit)+ (Register)寄存器
ALU:用来执行算术 、逻辑运算
寄存器:数据的临时周转中心 处理完的数据暂时存在这里
GRS:存放操作数和中间结果
PC:存放下调要执行指令的地址
IR:存放当前指令
存储器相当于计算机中的仓库
功能:存储数据和程序
组成:层次化结构
分为两种 内存(Primary memory): Cache + Main memory
外存:磁盘(Magnetic disk):存放系统的软件和文档 光盘 闪存(flash)
Cache(高速缓存):存放最近使用的数据和指令
闪存:非易失性存储器 突然断电数据也不会消失
输入/输出系统(Input /Output - I/O) I/O系统 硬件系统
I/O Controller(I/O)控制器
作用:控制外设工作,完成主机和外设之间的交流
输入/输出信息
包括:Monitor printer keyboard mouse ......
bus(总线)
- 作用:用于各个部件之间的连接
unix操作系统启动程序hello的过程 shell:命令解释器
shell程序:读取hello程序 hello程序放到寄存器中然后存到主存 这时会等待用户执行下个命令 (???)
确定后 shell根据字符串中的hello找到hello.exe执行程序 执行hello world 从磁盘读入主存 这时cpu就可以从hello world 代码执行 (cpu不能执行磁盘上的程序)
必须先把磁盘上的程序调入到主存中 cpu才能开始从程序执行 hello程序将 hello.world的字节从主存送到寄存器中 通过寄存器输出到显示屏中
操作系统基本作用
防止:不好程序乱用 :只申请内存却不释放内存导致内存溢出(应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于能提供的最大内存。此时程序就运行不了,系统会提示内存溢出)
基本的操作界面:用户在使用的过程中不用担心键盘 cpu相互之间怎么操作 只需要做自己想做的事即可
操作系统抽象概念
进程:对每一个正在运行的程序的抽象 只要运行了就会在任务管理器中出现
虚拟存储器:每个进程都是一致的存储器 --虚拟地址空间 0x001 ..... 编程的时候不用担心地址往哪里送这些操作系统会处理 从0开始编址一致的虚拟空间
I/O设备抽象:文件是对I/O设备的抽象 磁盘用文件来管理磁盘 比如说:d磁盘存放了哪些应用 app 这些都是用一个个程序 或文件组成 系统中的I/O都是通过os提供系统函数(printf)调用来访问文件
上下文切换过程
把现在正在运行的进程换下来 上另外一个以Linux为例子 现在在执行ping baidu.com 切换执行另外一个命令mkdir /dvd/ 此时 ping baidu.com 被保存在任务自己的堆栈中 然后创建 mkdir /dvd/ 进程
数据的流动做什么操作都是靠cpu执行的 所以说cpu是电脑的大脑
这篇关于P2存储程序原理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign学习入门:轻松掌握微服务通信
- 2024-12-27OpenFeign学习入门:轻松掌握微服务间的HTTP请求
- 2024-12-27JDK17新特性学习入门:简洁教程带你轻松上手
- 2024-12-27JMeter传递token学习入门教程
- 2024-12-27JMeter压测学习入门指南
- 2024-12-27JWT单点登录学习入门指南
- 2024-12-27JWT单点登录原理学习入门
- 2024-12-27JWT单点登录原理学习入门