特此声明 |
---|
本文不是作者原著,只是做的读书笔记 |
序
operator: 运算符
(表示运算时) , 操作符
(表示操作时)
local: 局部的
(统一)
chunk: 片
表示:一块连续的内存区域, 区别于block块
1.1 信息就是位+上下文
像hello.c 这样只由ASCII字符构成的文件成为文本文件
, 所有其他文件都称为二进制文件
.
一个同样的字节序列可能表示 整数
,浮点数
,字符串
,机器指令
. 理解上下文.
1.2 程序被其他程序翻译成不同的格式
预处理阶段 : 预处理器cpp根据以
#
开头的命令,读取系统.h的内容, 直接插入程序文本中, 等到另一个C程序, 通常以.i作为文件扩展名.编译阶段 : 编译器 将文本文件.i翻译成文本文件.s(它包含一个
汇编语言程序
)汇编阶段 : 汇编器as 将.s翻译成机器语言指令, 把这些指令打包成一种叫做
可重定位目标程序
, 结果保存到.o文件(二进制)中.连接阶段 : 程序调用了printf函数, 它存在于printf.o目标文件中, 连接器ld就负责处理这种合并. 结果得到
可执行目标文件
.