首页 > 编程语言 >第一章——对程序员来说CPU是什么

第一章——对程序员来说CPU是什么

时间:2024-01-20 16:13:01浏览次数:26  
标签:return 程序 第一章 程序员 指令 寄存器 执行 CPU

这本书的第一章主要讲解的是CPU。那对于程序员来说CPU到底是什么呢?这一章便给出了答案。
cpu是什么?
CPU是Central Processing Unit(中央处理器)的缩写,也就是相当于计算机的大脑。它由寄存器、控制器、运算器、时钟构成,各部分之间由电流信号相互连通。CPU是寄存器的集合体,我们也需要深入了解寄存器,因为程序是将寄存器作为对象来描述的。CPU能够直接识别和执行的语言只有机器语言,所以需要使用汇编语言编写代码再将其转换为机器语言。通过阅读汇编语言编写的代码,能够了解转化成机器语言的程序的运行情况。
一个CPU中有很多不同种类的寄存器,其中程序计数器、累加寄存器、标志寄存器、标志寄存器、指令寄存器、栈寄存器只有一个,其他的寄存器一般有多个。它们之间相互连通。
机器语言的主要类型和功能
跳转指令程序的流程分为三种——顺序执行、条件分支、循环。

  • 决定程序流程的是程序计数器。CPU每执行一个指令,程序计数器的值就会加1。
  • 累加寄存器会执行算数运算、逻辑运算、比较运算、移位运算。
  • CPU在执行运算时,标志寄存器的值会根据运算结果自动设定。是否执行跳转指令由CPU参考标志寄存器的数字后判断

call指令和return指令 函数的调用机制和上述条件分支、循环的机制不同。它一般通call指令和return指令完成。

  • call指令会把调用函数后要执行的指令地址存储在名为栈的主存内。函数处理完毕后,再通过函数的出口来执行return命令。return命令的功能便是吧保存在栈中的地址设定到程序计数器中。
    除上述描述的寄存器功能外,还有许多寄存器有它特定的功能。例如基址寄存器和变址寄存器,CPU会通过基址寄存器+变址寄存器的值解释为实际查看的内存地址。这些值和我们平常生活中的十进制不太相同,而是用到了二进制,将会在下一章进行讲解。

标签:return,程序,第一章,程序员,指令,寄存器,执行,CPU
From: https://www.cnblogs.com/c-yying/p/17976569

相关文章

  • 第一章读后感
    读第一章,我首先明白了程序是指示计算机每一步动作的一组指令,程序是由指令和数据组成的,CPU可以直接识别并使用的语言就是机器语言,正在运行的程序存储在内存里,内存中,用来表示命令和数据存储位置的数值就是内存地址,计算机的构成元件中,负责程序的解释和运行的是CPU这些概念。 这些......
  • CPU到底是什么
    CPU是中央处理器,它是计算机的大脑,其内部由数百万至数亿个晶体管构成的,要理解CPU,关键是要了解存放指令和数据的寄存器。CPU是负责对最终转换为机器语言的程序内容进行解释和执行的设备。其内部是由寄存器、控制器、运算器和时钟的四部分组成。他们之间通过电信号连接。CPU通过地址......
  • 人工智能第三版 第一章笔记
    人工智能第三版第一章人工智能概述主要内容:基本概念,应用领域、近期的历史和未来的前景1.图灵测试艾伦·图灵(AlanTuring)寻求可操作的方式来回答智能的问题,他想把功能(functionality,即智能能做的事情)与实现(implementation,即如何实现智能)分离开来。模拟游戏:询问者在有帘子的......
  • 人工智能第一章习题
    人工智能第一章习题1.你如何定义人工智能?​ 人工智能可以定义为计算机科学的一个分支,涉及创建能够执行需要人类智能的任务的机器。这包括学习、推理、解决问题、感知和语言理解等方面2.区分强人工智能与弱人工智能?​ 弱人工智能仅仅关注系统的表现​ 强人工智能通过模拟人......
  • 第一章读后感
    在阅读了《程序是怎样跑起来》的第一章后,我对CPU和程序之间有了深入了解,本章用图文的形式,揭示了计算机的底层工作原理,让计算机程序变得易于理解第一章重点解释了CPU对程序的重要性,他作为计算机的“大脑”,负责解释和运行程序内容,而程序由指令和数据组成,CPU可以直接识别并使用的语......
  • Unity 程序员UI编码规范
    今天给大家分享UnityUI开发相关的一些编码和规范,有了这些指导规范,帮助你的项目获得更好的性能,少走弯路。UnityGUI(也被称为UGUI)经常是项目性能问题的来源。考虑使用多分辨率和宽高比大部分情况下,我们一套UI,能基本全部适配好,UnityUI让建立一个可以适应不同分辨率和宽高比屏幕调......
  • Linux中利用shell脚本提升cpu使用率
    使用背景:因新申请下来的服务器暂时没有部署任何应用导致cpu使用率很低,那资源组那边给出两个方案,1.要不把服务器用起来2服务器进行降配降配是不可能降配的,后面正式用起来去升配就很麻烦了使用说明:这个脚本主要是针对多核服务器进行使用,前提你想让你服务器......
  • 《程序是怎样跑起来的》第一章读后感
    我是计应232班学生朱思嘉,今日发表《程序是怎样跑起来的》第一章读后感这本书的第一章,深入浅出地解释了计算机程序的基本概念,以及它们是如何在计算机中运行的。通过阅读这一章,我对程序的运行机制有了更深入的理解。我认识到,一个程序不仅仅是一堆代码的集合,它还包括了数据、输入、......
  • [工程题] THUSC 2023 Day2 奋斗四小时,手搓 CPU
    https://www.luogu.com.cn/contest/110331https://www.luogu.com.cn/team/44709#problem可以在https://www.luogu.com.cn/problem/T335306下载manual.pdf,在https://www.luogu.com.cn/problem/T335313下载statement.pdf和simulator.cpp。组合逻辑电路部分此部分的要求详......
  • 每个Go程序员必犯之错之切片循环错误
    每个Go程序员必犯之错原创 晁岳攀(鸟窝) 鸟窝聊技术 2023-12-1808:48 发表于北京 听全文说起每个程序员必犯的错误,那还得是"循环变量"这个错误了,就连Go的开发者都犯过这个错误,这个错误在Go的FAQ中也有提到Whathappenswithclosuresrunningasgoroutines?[......