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

php做视频网站源码wordpress跳转到手机版

php做视频网站源码,wordpress跳转到手机版,政务网站集约化建设要求,一个服务器上建立多个网站吗🐵本篇文章将对cpu的相关知识进行讲解 一、认识CPU 下图是简略的冯诺依曼体系结构图 上图中,存储器用来存储数据,注意在存储器中都是以二进制的形式存储数据的,CPU就是中央处理器,其功能主要是进行各种算术运算和各种…

🐵本篇文章将对cpu的相关知识进行讲解


一、认识CPU

下图是简略的冯诺依曼体系结构图

上图中,存储器用来存储数据,注意在存储器中都是以二进制的形式存储数据的,CPU就是中央处理器,其功能主要是进行各种算术运算各种逻辑判断

我们在计算机上运行的任何一个程序,本质上都是在CPU上运行的,接下来再结合任务管理器来对CPU进行讲解

1.1 占有率和频率

上图中,“3%” 就是CPU占有率

举个例子:假如一个人上班总时间为8小时,但他用4小时就完成了今天的工作,此时称CPU占有率为50%,计算机中运行的程序并非都是全力的工作,通过计算每一个程序的CPU占有率,最终算得的总占有率就是上图中显示的

“3.03GHz” 就是CPU频率

CPU频率用来描述CPU工作的效率,数字越大,工作效率越快,CPU频率也可以简单认为1s执行多少个指令/计算了多少次

CPU频率还有基础频率最大睿频的概念,基础频率就是CPU保底的工作效率,最大睿频就是CPU最高能达到的工作效率

1.2 核心

以前的CPU都是单核心CPU,要想提高这种CPU的性能,就必须增加其内部的集成原件的数量,那么就得让每个单位原件更小,但是并不能无限小下去,单核CPU就达到了发展瓶颈

于是就有了多核心CPU,现在的计算机大多都是多核心CPU

内核为物理核心,逻辑处理器是逻辑核心,买电脑时看到的8核 16线程就是这个意思(这里有一个简单的了解就行)

CPU是多核心的,但每一个核心的工作效率是一样的,所以在设计程序时为了提高工作效率,就得做到合理分配,把要完成的任务交给不同的核心去完成,这也就是我们后续要研究的“多线程编程”

1.3 缓存

寄存器是CPU内部存储数据的模块,在存储空间上:硬盘 > 内存 > 寄存器,在速度上:寄存器 > 内存 > 硬盘;寄存器和内存大概差3~4个数量级,内存和硬盘又差3~4个数量级,由于速度差异过大,CPU提供了缓存模块

上述CPU中有3个缓存,对于缓存数字越小,速度越快,空间越小

有些要频繁使用的数据如果存在内存中,CPU要频繁从内存中读取,这样速度会比较慢,因此可以将这些要高频使用的数据放到缓存中

CPU在读取指令时,先看缓存中有没有,如果有直接从缓存中读取,没有则从内存中读取

二、CPU如何执行指令

2.1 CPU执行指令的步骤

CPU执行指令分为3个步骤:

1. 读指令:将内存中的指令数据读取到CPU的寄存器中

2. 解析指令

3. 执行指令

2.2 指令

指令就是指导CPU工作的命令,主要由 操作码+操作数 组成,操作码就是指令的编号,操作数就是接下来通过指令要操作的数据

下图是一个指令表:

每一个CPU被设计出来时都会提供一个指令表

2.3 CPU如何读到指令

写完一个Java程序,就会生成一个 .java 的源文件,经过编译后生成 .class 的二进制字节码文件,之后运行程序时JVM会把 .class 文件加载到内存中,在内存中进一步被翻译为CPU认识的二进制指令

写完一个C程序,就会生成一个 .c 的源文件,经过编译后生成 .exe 的二进制文件,之后运行程序时操作系统会把 .exe 文件加载到内存中,在内存中进一步被翻译为CPU认识的二进制指令


CPU中有一个专门的寄存器保存接下来要从哪个内存地址取指令(在不同的CPU中可能叫不同的名字,在有些操作系统书中称其为“程序计数器”简称“pc”

此处假设从0号地址开始读取,CPU每次读取执行完一个指令之后,就会自动把pc中的值+1,即顺序取下一条指令(有些情况会遇到跳转类指令,此时就根据设置的地址进行取地址)

接下来通过具体的操作进一步熟悉CPU执行指令的过程

2.4 模拟操作

第一轮操作:

读取指令:从0号地址读取到 00101110

解析指令:操作码:0010;操作数:1110(10进制:14),通过查询指令表该指令就是将14号地址的数据加载到A寄存器中

执行指令:将14号地址的数据:00000011(10进制:3)加载到A寄存器中

第二轮操作:

读取指令:顺序读取1号地址指令:00011111

解析指令:操作码:0001;操作数:1111(10进制:15),通过查询指令表该指令就是将15号地址的数据加载到B寄存器中

执行指令:将15号地址的数据:00001110(10进制:14)加载到B寄存器中


执行到这一步:CPU中,寄存器A:3,寄存器B:14


第三轮操作:

读取指令:顺序读取2号地址指令:10000100

解析指令:操作码:1000;通过查指令表,此处是将两个寄存器的数据求和并将求和后的数据加载到第二个寄存器,操作数:0100,此处的01 和 00 就代表两个寄存器的id,id是在CPU设计出来的时候提前约定好的,这里就假定01:B,00:A

执行指令:AB寄存器中数据求和等于17 并将其加载到A中


此时CPU中,寄存器A:17,寄存器B:14


第四轮操作:

读取指令:顺序读取3号地址指令:01001101

解析指令:操作码:0100;操作数:1101(10进制:13),通过查指令表,此处将A寄存器中的数据加载到13号地址处

执行指令:13号地址的数据:00000000 -> 00010001(17的二进制形式)

第五轮操作:

读取指令:顺序读取4号地址指令:00000000

解析指令:操作码:0000;操作数:0000,指令表中没有0000的操作码,一般认为程序运行结束

执行指令:程序退出


🙉本篇文章只是对CPU进行了大致的了解,接下来会对操作系统的相关知识进行讲解

http://www.yayakq.cn/news/952942/

相关文章:

  • 建筑网站新闻写那些好wordpress同步到微信
  • 下载建设网站c2c网站特点
  • 现在哪个网站做电商好学校网站如何建设方案
  • 网站建设中+网页代码google wordpress
  • 临沂 网站优化wordpress多个页面
  • 网站开发如何避开法律青州网站设计
  • 长沙做网站哪家公司好学网页设计需要什么基础
  • 江苏城乡建设职业学院网站建筑工程联系方式公开网
  • vs做网站怎么把网页改为自适应大小凡科app
  • 乐清做网站公司chatgpt网址
  • 做菠菜网站好赚吗天津网页模板建站
  • 怎样在公司的网站服务器上更新网站内容北京哪里能学做网站
  • 网站开发 明细网页制作wordpress模板下载
  • 开源项目网站怎么做 带视频c2c网站制作
  • 台州网站专业制作企业所得税怎么做账
  • 自己做网站语言包怎么做centos 7.2 wordpress
  • 建自己的零售网站政法队伍建设网站主要内容
  • 体育馆做网站公司做咩有D网站响网吧上不了
  • 能直接看的网站有哪些成都网站建设免费咨询
  • 乐清市网站建设设计电商素材网站
  • 如何自己搭建网站手机之家官方网
  • 东莞东城网站建设做网站选什么专业
  • 做汽车拆解视频网站网站建设优化重庆
  • 微软做网站的工具完整企业网站模板
  • 个人备案的网站内容手机免费网站
  • 广州网站设计上海公司注销流程步骤
  • 在百度里面做个网站怎么做网络营销的手段有哪些
  • 无锡市网站搭建wordpress导入数据库
  • 深圳教育 网站建设wordpress恢复网站
  • 做网站开发的公司销售代理网址在线