1.1概述:机器语言
开始一段旅程之前,我们通常想要知道它的大概路线。
学习编程也是一样,我们投入到细节之前,也应该了解一下程序是如何被创建和工作的,以及一门编程语言被设计出来的背景。
不要在意本章描述了一些你无法理解的东西,对它们大体上有个概念就行。在续章节会详细介绍它们。
1、机器语言
计算机中负责执行程序的那一小块芯片叫做CPU(Central Processing Unit)。
程序对于计算机来说就是一组指令列表,这种指令叫做机器语言。在早期,每个类型电脑都有自己的机器语言。
当CPU执行程序的时候,程序被存储在“内存”(也叫RAM —— Random Access Memory)。
除了程序本身,还有程序计算时用到的数据也会加载到内存。内存由很多有序“块”组成,每个“块”都有自己的地址。当CPU需要访问内存块中的数据,就把包含地址的信号发给内存,内存返回该地址指向的数据,CPU也会往内存中写入数据,用于保存一些地址。
对于机器语言,CPU的操作非常简单,就是不停地从内存中读出指令,执行,然后读出下一条,执行……。
CPU读和执行指令的细节不是特别重要,但是有一些基本概念值得了解。在CPU内部有一些寄存器,寄存器是小型的存储单元,可以存储数字或者指令。CPU使用一个寄存器来跟踪程序执行的位置,这个寄存器可以把它叫做计数器(Program Counter)。计数器只保存CPU将要执行的下一条指令的地址。
计算机执行机器语言是完全机械的物理行为。CPU的计算部分是由上亿个叫做晶体管的小开关组成,他们不停按照规则打开/关闭来完成计算。
机器语言表现出来就是二进制数字,0和1。一个0或1被称为一个比特(bit)。一条机器语言指令就是一串0/1序列(计算机中的所有数据都是二进制)。每个内存块能够存储1个字节(byte),1个字节是8个比特的序列。一条指令通常由多个字节组成,包含在连续的内存块中。
计算机之所以能用二进制数字工作,就是因为晶体管实现的小开关,开就是1,关就是0。机器语言指令被按规则以一连串开关的形式存储在内存中,加载到CPU后,CPU负责依照指令把对应的开关打开/关闭,然后响应执行结果。就是这么简单。
到这里,你应该理解了计算机的工作过程:内存存储二进制组成的机器语言程序和数据,CPU从内存中一条一条地读取指令,机械化地执行它们。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!