首页 > 其他分享 >CPU是什么?

CPU是什么?

时间:2024-01-29 23:23:53浏览次数:20  
标签:汇编语言 什么 跳转 程序 指令 寄存器 CPU

   在程序是怎样跑起来的这本书中我们首先被询问的一个问题是“程序是什么?它是有什么组成的?而CPU又与程序有什么关系呢?”,若我们能知道前两个,其实更容易将你带入讨论“CPU是什么?”这一话题中,你也能更加深入去理。首先这一章节读下来我知道程序的指令和操作是CPU执行的,而CPU是计算机的核心部位,就像我们所说的“大脑”。我知道了CPU是通过汇编语言(汇编语言编写的程序转化成机器语言的过程称为汇编,反之称为反汇编。)来说明运行的,这是因为汇编语言与机器语言基本上是一一对应,高级编程语言与之大不相同,因此被"OUT"。而CPU又有四部分构成——寄存器、控制器、运算器和时钟,但其中最重要的就是寄存器,因为寄存器的作用是用来暂存指令、数据等处理对象,而其它三个只是CPU运行的步骤罢了,寄存器才是目标,因此也可以说在整个程序进行过程中寄存器是被作为对象来描述的。所以我们若想了解CPU必须了解寄存器,在之后的阅读中我明白**CPU也就是寄存器的一个大的集合**。我想这张图更能体现:


然而这也说明寄存器不止一种(例如eax和ebp),而且不同种类的CPU其内部寄存器的数量、种类以及寄存器存储的数值范围都不同。但可根据功能将其大致分为八种:
在大致了解了CPU后也就能够讨论程序的运行流程了,首先自然是用户发出程序指令,之后就是造作系统将程序复制到内存中,最后就是CPU内的寄存器开始工作了。其中起决定性作用的是程序计数器,因为程序流程有三种——顺序执行、条件分支、循环,而条件分支与循环又包括跳转指令,因此它决定着程序的流程走向。下面这一列子更加通俗易懂:
但我认为标志寄存器是CPU运算时不可或缺的部分,因为CPU在进行运算时会先参考标志寄存器的数值后进行判断是否执行跳转指令。

标签:汇编语言,什么,跳转,程序,指令,寄存器,CPU
From: https://www.cnblogs.com/G-y-l-S-j-x1-3-1-4-5-2-1/p/17995465

相关文章

  • [经验] 丝绵树的别名是什么
    1、丝绵树丝绵树,又称苏木、印度檀香等,是一种常绿小乔木,原产于印度、缅甸等地。近年来,丝绵树逐渐在中国南方地区得到了广泛种植和应用。丝绵树的树形优雅秀美,树干笔直挺拔,枝叶繁茂,整株树木给人以生机勃勃的感觉。其叶子形状呈卵形,质地柔软,光滑无毛,颜色为深绿色。丝绵树还在春季开出......
  • 【实战项目】想自己通过C语言编写贪吃蛇吗?先来学习一下什么是WIN32API
    WIN32API前言大家好,很高兴又和大家见面了!!!在开始今天的内容前,咱们先闲聊一下。博主是从2023.8.19号晚上23:28左右正式开始接触C语言,在此之前,我也只是一个对编程一窍不通的小白,我的本科专业是给排水科学与工程,一个就业前景还不错但是不太适合我本人的专业。在经历了一些事情之后,我......
  • List<?extends T>和List<? super T>之间有什么区别?
    表示类型的上界,也就是说参数化的类型可能是T或者T的子类。例如:下面的写法都是合法的赋值语句:![](https://img2024.cnblogs.com/blog/3383899/202401/3383899-20240129203144762-685357479.png)(1)在上面的赋值显示中,对读数据进行分析1)不管给List如何赋值,可以保证List里存放的一......
  • [经验] 说一个人理性大于感性是什么意思
    1、理性大于感情的说说短句理性与感情是人类两个不同但又相互关联的方面。然而,当它们之间有冲突时,我们往往会发现自己更受感情的驱使,而忽视理性的重要性。下面是一些关于理性大于感情的说说短句,帮助我们更加理性地看待生活。“情感可以引导我们,但只有理性才能指导我们的决定。”感......
  • 什么是NAT?NAT类型有哪些?
    晚上好,我的网工朋友。NAT是一种地址转换技术,它可以将IP数据报文头中的IP地址转换为另一个IP地址,并通过转换端口号达到地址重用的目的。在大多数网络环境中,我们都需要通过NAT来访问Internet。NAT作为一种缓解IPv4公网地址枯竭的过渡技术,由于实现简单,得到了广泛应用。今天就和你聊......
  • http和https的区别是什么?https有什么优缺点?
    HTTP(HypertextTransferProtocol,超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。这个简单模型是早期Web成功的有功之臣,因为它使开发和部署非常地直截了当,被广泛地使用在WEB中。HTTPS(全称:Hyperte......
  • vue配合什么css框架
    在Vue中使用CSS框架可以提高开发效率和网站外观的一致性。下面是一些与Vue兼容的常见CSS框架:BootstrapVue:BootstrapVue是一个基于Vue.js的Bootstrap组件库。它提供了一套完整的Vue.js组件,同时也支持Bootstrap的所有特性。ElementUI:ElementUI是一套基于Vue.js的组件库......
  • 为什么不能这样使用 Object.assign(state, { visibilityFilter: action.filter })
    为什么不能这样使用Object.assign(state,{visibilityFilter:action.filter})?在Redux的reducer中,直接使用Object.assign(state,{visibilityFilter:action.filter})来修改状态是不推荐的做法。原因如下:纯函数原则:Redux要求reducer必须是一个纯函数,即给定相同的输入(sta......
  • 止盈和止损有什么区别?澳福实例讲解止盈如何工作
    由于经验不足的原因,刚进入市场的新手经常搞不清楚止盈和止损之间的区别。其实事实区分他们很简单,它们的应用完全不同,服务于不同的目的。那么,现在澳福 外汇和各位投资者来仔细看看止盈。该订单在价格达到指定水平时锁定利润。它是如何工作的?交易的黄金法则是永远为每笔交易设定目......
  • 为什么button command 不需要lambda函数添加参数 但是 bind 需要
    combo=tk.ttk.Combobox(frame_combo,values=self.lis,width=25,font=("MicrosoftYaHei",20))combo.pack(side='top',anchor="nw")combo.set("请选择功能")combo.option_add("*TCombobox*......