C Primer Plus 第一章 概览

特点:a. 可移植性,面向编程人员。

        b. 封装性与安全性(不足)。

其余略。

 

1.4  计算机工作的基本原理(P4 CPU的工作)

存储在计算机中的一切内容都是数字。

 

补充:

一.  计算机硬件系统五大部件

1.运算器(算数逻辑运算单元,ALU,Arithmetic Logic Unit)

   功能:对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。

2.控制器(Controller)

   组成:由指令寄存器,状态寄存器,指令译码器,时序电路,控制电路等组成。

   功能:从内存中一次取出命令,产生控制信号,向其他部件发出指令,指挥整个运算过程。

3.存储器

   功能:存储程序、数据和各种信号、命令等信息。

(1)内存储器,简称内存或主存,是CPU能直接寻址的存储空间。

(2)外存储器,简称外存或辅存,如硬盘。

4.输入(input)设备

   将程序、数据等转换成电信号存入内存中,如键盘、鼠标、扫描仪、光笔等。

5.输出(output)设备

   将计算机的处理结果转变为人们接受的形式输出,如显示器、打印机、绘图仪等。

注:

(1)控制器、运算器和寄存器(registers)等组成硬件系统的核心,即中央处理器(CPU)。

(2)常将运算器、控制器、内存三者合称为主机。

 

二. 电子计算机三大核心部件

1.中央处理器(CPU,Central Processing Unit)

   是一块超大规模集成电路;

   是计算机的运算核心(core)和控制中心(control unit);

   解释计算机指令以及处理计算机软件中的数据;

   主要包括运算器(ALU)和高速缓冲存储器(Cache),以及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。

2.内部存储器(Memory)

   由半导体元件制成;

   内存又称为主存,是CPU能直接寻址的存储空间;

   计算机中所有程序的运行都是在内存中进行的;

   暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。

3.输入/输出(I/O)设备

 

三. RAM与ROM

1.RAM(Random Access Memory,随机存储器)

   与CPU直接交换数据的存储器;可读可写,随时读写,断电时数据会自动消失。

   通常说的电脑内存2G、4G,CPU里用的高速缓存,内存条等即为RAM。

2.ROM(Read-only memory,只读存储器)

   一旦存储资料则无法再将其改变或删除。

   此类存储器多用来存放固件,比如计算机启动的引导程序,手机、MP3、MP4、数码相机等一些电子产品的相应的自带程序代码。

3.EPROM、EEPROM、Flash ROM(NOR Flash,NAND Flash)

   性能与ROM差不多,但可改写,在U盘,MP3中应用广泛。

注:

(1)在计算机中,RAM一般用作内存(2G,4G,8G等)。

(2)ROM用来存放一些硬件的驱动程序,也就是固件。

(3)硬盘是外存(256G,512G等)。

 

1.5  高级计算机语言和编译器

    机器语言与高级语言。

    编译器:将源代码转换成可执行代码的程序。

 

1.6  使用C语言的7个步骤

(1)定义程序目标。

(2)设计程序。

(3)编写代码。

(4)编译。

(5)运行程序。

(6)测试和调试程序。

(7)维护和修改程序。

 

整理:

一.源代码与目标代码

(1)源代码:人为编写的代码称为源代码,源代码保存的文件称为源代码文件,简称源文件。一般该文件以.c结尾,如concrete.c。

(2)目标代码:编译器将源代码转换成目标代码。本质上是将源代码转换为机器语言代码,目标代码保存的文件称为目标代码文件,简称目标文件。一般该文件以.obj结尾,如concrete.obj。

注:

(1)目标代码是一个中间代码,并不是完整的程序,不能执行。

(2)编译器相当于将高级语言翻译成了机器语言,目标代码包含源代码的转换结果。

(3)文本本身是代码,内容保存在文件。

 

二.启动代码与库例程代码

目标代码缺少两个元素。

(1)启动代码(start-up code):相当于程序与操作系统之间的接口。

(2)库例程的代码:标准C库中的例程(称为函数)的目标代码。例如,源代码使用了printf()函数,则目标代码文件中仅有使用该函数的指令的目标代码,而没有该函数本身的目标代码。该函数本身的目标代码存储在另一个被称为“库”的文件中。库文件中包含许多函数的目标代码。

 

三.编译、连接与可执行文件

(1)编译:编译器将源代码转换为目标代码。

(2)链接:链接器将目标代码(.obj)与系统的标准启动代码和库代码结合在一起,并将它们存放在单个文件中,即可执行文件。一般该文件以.exe结尾,如concrete.exe。对于库代码而言,链接器仅从库中提取所使用的函数的目标代码。

注:

(1)目标文件和可执行文件都是由机器语言指令组成的。

(2)目标文件只包含所编写的代码转换乘的机器语言,可执行文件还包含库例程和启动代码的机器语言。

(3)一般而言,编译器自动启动链接器,所以会说编译器将源代码转换成了可执行代码。

 P8 图1.4 编译器和链接器

1.7  编程机制

集成开发环境(IDE,Integrated Development Environment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。

 

 

 

posted on 2016-07-29 15:10  HerculEllery  阅读(105)  评论(0)    收藏  举报