计算机导论

1、计算机结构

无论以何种外在形式显示,计算机都可以划分为 6 个逻辑单元:

输入单元:通过输入设备获取信息。

输出单元:将计算机处理好的信息放到输出设备上供计算机外部的用户使用。

内存单元:可以快速访问、容量较小的存储设备,存储的信息是易失的(断电后信息丢失),被称为存储器(Memory)、主存(Primary memory)、RAM(Random Access Memory,随机访问存储器)。

辅存单元:可以长期、大量的存储数据,访问速度慢,断电不丢失,价格比主存低得多。

算术逻辑单元(ALU):执行诸如加减乘除这样的运算,还具有决策机制,比如比较两个取自内存单元的两个数据项是否相等。ALU 常被做成 CPU 的一部分。

中央处理单元(CPU):协调和监督其他单元的工作。目前的计算机大多拥有多个 CPU(多核)。

2、计算机语言

机器语言:由计算机硬件设计所定义,计算机可以直接理解的语言。机器语言由数字(最终简化为 0 或 1)串组成,它指挥计算机在一个时刻执行一个最基本的操作。

汇编语言:编写机器语言程序既费时又费力,程序员用英语风格的缩写词来表示计算机的基本操作,更方便程序员理解和编写程序。这些缩写词构成了汇编语言的基础。计算机不能理解汇编语言,需要使用名叫汇编程序翻译程序将汇编语言源程序转化为机器语言程序。

高级语言:完成一个任务需要多条指令,就需要编写多条汇编指令。为了提高程序开发速度,诞生了高级语言,可以用一条程序语句完成多个任务。被称为编译器(Compiler)的翻译程序将高级语言源程序翻译为机器语言。(将一个大型的高级语言源程序编译为机器语言需要相当长的计算机时间。解释器:可以直接执行高级语言源程序,避免了编译的延迟。但是,与执行编译好的程序相比,通过解释器来执行高级语言源程序要慢得多。)

3、标准C

C89:1989 年,美国国家标准协会(ANSI)通过了 C 语言标准,简称为 C89 标准。

C90:C89 在 1990 年,被国际标准化组织(ISO)和国际电工委员会(IEC)一字不改地采纳,简称 C90 标准,与 C89 完全等同。

C99:1999 年由 ISO 和 IEC 发布的 C 语言的第二个官方标准。

C11:2011 年由 ISO 和 IEC 发布的 C 语言的第三个官方标准。

4、C标准库

深入了解库函数,参阅 P.J.Plauger 编写的《标准C库》(The Standard C Library)。

5、C程序处理步骤

C 程序是以项目管理源代码的。先创建项目名为 A 的项目,再在源文件中添加 a.c 文件:
1、编辑(Edit):在 a.c 文件中编辑源代码。
2、预处理(Preprocess):处理宏定义、注释、头文件等。
3、编译(Compile):通过 cl.exe 编译源代码,形成名为 a.obj 的目标文件(中间 / 临时文件)。
4、链接(Link):通过 link.exe 将 a.obj 和库函数或其他人编写的函数链接在一起,形成可执行文件 A.exe。
5、加载(Load):由装载程序(Loader)把 A.exe 从磁盘中取出并存放到主存中。
6、执行(Execute):运行 A.exe。

        程序员可以看懂源代码,但计算机看不懂源代码。所以在源代码(a.c)写好后,需要把计算机看不懂的代码文件,通过编译器编译成计算机能看懂的二进制文件(a.obj)。但这个目标文件还缺少程序运行所必需的一些库文件,这就需要通过链接器把目标文件和库文件结合打包到一起,形成最终的可运行 C 程序。因为需要库文件等其他文件,最终的可执行文件要比目标文件大。

编译只针对一个源文件,有多少个源文件就需要编译多少次,生成多少个目标文件。
链接除了可以打包目标文件和库文件,还可以把多个源文件打包到一起。

a.c:在项目文件夹 A 中的 A 文件夹里。
a.obj:在项目文件夹 A 中的 A 文件夹中的 Debug 文件夹里。
A.exe:在项目文件夹 A 中的 Debug 文件夹里。
cl.exe 和 link.exe:都在安装目录的 bin 文件夹里。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值