第1章
对程序员来说,CPU 到底是什么
热身准备
进入正题之前,我为大家准备了一些热身问题,大家可以看看自己是否能够准确回答。
问题
-
什么是程序?
-
程序是由什么组成的?
-
什么是机器语言?
-
运行中的程序存放在什么地方?
-
什么是内存地址?
-
在计算机的组成部件中,负责对程序进行解释和运行的是哪个?
怎么样?有些问题是不是无法简单回答出来呢?下面给出笔者的答案和解析供大家参考。
答案
-
指示计算机每一步动作的一组指令
-
指令和数据
-
CPU 可以直接解释执行的语言
-
内存(主存)
-
用来表示指令和数据在内存中存放位置的数值
-
CPU
解析
-
一般意义上的程序,比如运动会、音乐会的程序,表示“事情进行的先后顺序”。在这一点上,计算机程序也是一样的。
-
程序是指令和数据的集合。例如,在 C 语言程序“printf(" 你好 ");”中,printf 就是指令," 你好 " 就是数据。
-
CPU 可以直接解释执行的只有机器语言,而用 C 语言、Java 等编写的程序,最终都要转换成机器语言才能执行。
-
保存在硬盘等媒体中的程序需要复制到内存中后才能运行。
-
指令和数据在内存中的存放位置用地址来表示,地址由整数表示。
-
在计算机的组成部件中,根据程序指令进行数据运算并控制整个计算机的设备称为 CPU。
本章要点
我们首先来了解一下负责对程序进行解释和执行的设备——CPU。CPU 是 Central Processing Unit(中央处理器)的缩写,它是计算机的大脑,其内部由数百万至数亿个晶体管构成,这些知识想必大家已经有所了解。然而,仅仅了解这些知识并不能对编程起到什么作用。程序员还需要理解 CPU 的内部工作原理。要理解 CPU,关键是要了解存放指令和数据的寄存器(register)的原理。了解了寄存器,就能够理解程序运行的原理了。可能很多人觉得 CPU 的原理很难,但实际上它非常简单。大家不妨怀着轻松的心情来阅读。
dIwtAns6JmUePa7WnDqPTFCmVJqFfSMtGgZ1Oi7QMyAoer1NQG/fOSHvYxsksTeA