程序是怎么跑起来的? —— CPU 是什么?C/C++程序的运行

1. 概念初步

  • 程序:计算机的程序,和做饭、运动会的程序一样,指的是“做事的先后次序”;
  • 程序的组成:程序是指令(及物动词)和数据(宾语)的组合体;
    • C 语言 printf("hello\n");,这个简单的程序,printf是指定,hello是数据;
  • 机器语言:CPU 能够直接识别和执行的只有机器语言。
    • 使用C、C++、Java 等高级语言编写的程序最后都会转化为机器语言;
  • 正在运行的程序存储在什么位置?
    • 硬盘和磁盘等媒介上保存的程序被复制到内存(内存中是其副本)后才能运行;
  • 内存地址:标记和指定命令和数据的场所;
    • 地址由整数值表示;
  • CPU 的作用:
    • 根据程序的指令来进行数据运算,并控制整个计算机的设备;

2. CPU 是什么?

CPU 负责的就是解释和运行最终转换成机器语言的程序内容;

CPU 和 内存(memory)是由许多晶体管组成的电子部件,通常称为 IC(Integrated Circuit,集成电路);

CPU 的组成(各部分之间的电信号相互流通):

  • 寄存器;

    暂存指令,数据等处理对象;可将寄存器看做内存的一种;根据种类的不同,一个 CPU 内部会有 20~100 个寄存器;

  • 控制器;

    控制器负责把内存上的指令、数据等读入寄存器,并根据执行的结果来控制整个计算机。

  • 运算器:运算器负责运算从内存读入寄存器的数据。

  • 时钟:负责发出 CPU 开始计时的时钟信号;

    • Pentium 2GHz 就表示时钟信号的频率为 2GHz

3. C++程序的运行

生成一个 C++ 程序共有三个步骤:

  • ①预处理:代码在预处理器中运行,预处理器会处理代码中的元信息(meta-information)
    • 预处理指令以 # 字符开始,#include <iostream> 就是如此,本例中,include 指令是告诉预处理器,提取 iostream 头文件中的所有文件内容并提供给当前文件,
    • 当然头文件最常见的用途是声明在其他地方定义的函数;
  • ②编译:代码被编译为计算机可以识别的目标文件;
  • ③链接:独立的目标文件链接在一起形成一个应用程序;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五道口纳什

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值