1.就编程而言,可移植性代表什么?

c是一门可移植性语言,意味着在一个系统上写的c程序,在其他系统上可以不经修改,或有较少的修改则可运行。如果有修改的必要,通常是将其引入的头文件中的几项内容。

解释源代码文件、目标代码文件和可执行文件的区别

2.编译器的任务是什么?

编译是一个程序,其工作是将源代码转为可执行代码,可执行代码是用计算机本机语言或机器语言表示的代码。

3.链接器的任务是什么?

c编译器从c库中获取最终程序加入代码。库中包含很多标准例程供开发者使用,链接器的程序将库例程引入,大多系统上,编译器自动运行链接器

4.计算机工作原理

现代计算机可分为几个部件:

(1)中央处理器,或称CPU,负责处理程序,CPU的工作可大致概括如下:它从内存获取一个指令,并执行该指令,然后从内存中获取下一个指令并执行,一个1000兆的CPU一秒钟内大概可重复1亿次这样的工作。CPU有自己的工作区,该工作区由若干个寄存器组成,每个寄存器都可以保存一个数。一个寄存器保存下一条指令的内存地址,CPU使用该信息获取下一条指令。获取一条指令后,CPU在另一个寄存器中保存该指令并将第一个寄存器的值更新为下一条指令的地址

(2)随机访问存储器,或称内存、RAM,在计算机运行时用于保存文件和程序

(3)永久存储器,一般是硬盘,及时计算机关机也可以保存文件和程序

(4)还有各种外围设备,如:鼠标、键盘、显示器

5.两数相加步骤

(1)将内存单元为2000的数字复制到寄存器1

(2)将内存单元为2008的数字复制到寄存器2

(3)将寄存器2中的数与寄存器1中的数相加,答案留在寄存器1

(4)将寄存器1中的内容复制到内存单元2009

6.源代码文件、目标代码文件和可执行文件的区别

c编程的基本策略,是使用程序将源代码转换为可执行文件,此文件包含可以运行的机器语言代码。c分两步完成这一工作:编译和链接。

编译器将源代码转为中间代码,链接器将此中间代码与其他代码相结合来生成可执行文件。c使用被划分为两部分的这一方法使程序便于模块化。可以编译各个模块,然后使用链接器将编译后的各个模块链接起来。这样,如果需要改变一个模块,则不必重新编译其他模块,同时,链接器将程序与预编译的库代码结合起来。

中间文件的形式有多种选择。最一般的选择,是将源代码转为机器语言代码,将结果放置在一个目标代码文件中。虽然目标代码文件包含机器语言代码,但该文件还不能执行。目标文件包含源代码的转换结果,但它还不是一个完整的程序。

目标代码文件中所缺少的第一个元素是一种叫做启动代码的东西,此代码相当于程序与操作下系统之间的接口。第二个元素就是库例程代码。几乎所有c程序都利用标准c库中所包含的例程(称为函数)。目标代码文件一般不包含这一函数的代码,它只包含声明使用的printf()函数指令。实际代码存储在另一个称为“库”的文件中。库文件中包含许多函数的目标代码。

链接器的作用是将这3个元素(目标代码、系统的标准启动代码和库代码)结合到一起,并将他们存放在单个文件,即可执行文件中。对库代码而言,链接器只是从库中提取所使用函数所需要的代码。

目标文件和可执行文件都是由机器语言指令组成的。但目标文件只包含所编写的代码转换成的机器语言,可执行文件包含所使用的库例程及启动代码的机器代码



以上所述有部分来自原作,部分来自本人理解,如有错误的地方,欢迎提出指正和批评

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐