程序的基本组成部分是什么?程序是由什么构成的
什么是程序?
学计算机必须知道程序这个概念,因为它是软件的主要组成部分。
程序其实就是指令和数据的集合。
指令就是一系列的命令或者代码,比如你按键盘上的删除键,其实就是向操作系统发送了一个删除的指令。
数据就是一堆二进制的01代码,它分为两类,一类是作为指令执行对象的输入数据,一类是从指令执行结果得到的输出数据,无论程序多么复杂,其内容也都是指令和数据。
在编程的时候,程序员为一组指令定义一个操作,这个叫做函数。为数据定义一个名字,这个叫做变量。看到变量和函数, 大家也许会联想到数学吧。
但是在程序中有一点与数学不同的是, 变量和函数的名字都可以由一个以上的字符构成, 比如下面这种情况。
output = operate(input)
也就是说, 使用由多个字符构成的长名字也是可以的。 而且写成这样的情况更加普遍。
举个例子,如下是一段编程语言C语言写的代码:
int a, b ,c;
a = 20;
b = 30;
c = fun(a, b);
在C 语言中要在每条指令的末尾写一个分号“;”。
第一行的“int a, b, c;” 表示接下来要使用名为 a、 b、 c 的整数变量, 其中 int 是integer( 整数) 的缩写, 用于告诉计算机“要用的是整数”,学过小学数学的人都知道整数是什么吧!
下一行的“a = 20” 表示把整数 20 赋值给变量 a。 同样地, “b = 30;” 表示把整数30 赋值给变量 b。 等号“=” 是赋值给变量的指令,记住在编程语言中等号“=”不是等于的意思而是赋值的意思。
再来看最后一行的“c = fun(a, b);”, 这一行表示把变量 a 和 b 传给函数, 并将函数运算结果赋值给变量 c。
其中使用了一个名为 fun的函数, 但是它的具体实现我并没有写出来,只是代表它会返回一个值,然后把这个返回的值赋值给c。
通过上面这个例子, 大家就应该能明白程序确实只是由指令和数据构成的了吧。
程序员在写好代码后,代码并不能直接运行,而是需要经过编译后再执行,什么是编译?
所谓的编译,就是把C语言等编程语言写的文件(也叫做源文件)转换成机器语言(也叫作二进制代码),在Windows系统下叫做exe可执行文件,其内容大概如下:
C7 45 FC 01 00 00 00 C7 45 F8 02 00 00 00 8B 45
F8 50 8B 4D FC 51 E8 82 FF FF FF 83 C4 08 89 45
F4 8B 55 F4 52 68 1C 30 42 00 E8 B9 03 00 00 83
它是一段用16进制表示的二进制代码,这些数据代表了什么呢?
这些数据其实就是一些指令和数据,比如C7可能代表的是一个赋值操作,45代表的是一个整数。只是这种数据人类很难看懂,但是对于计算机来说这个很容易读懂。
大家所使用的 Windows 系统的计算机中, 都会有很多个以 .exe 为扩展名的可执行程序文件。
计算机是执行程序的机器,程序是指令和数据的集合,只要定义出了指令和数据的规范, 装有符合规范的程序的计算机自然就可以相互协作了。
所谓计算机的协同工作指的是, 输入到一台计算机中的数据, 可以通过互联网传送到与这台计算机相连的其他计算机上执行运算, 运算所输出的结果再返回给这台计算机。
无论是哪个程序, 其内容都是数值的罗列, 每个数值要么是指令, 要么是数据。
欢迎关注我,学习更多计算机知识!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com