计算机系统下的Hello World
一、序
C++的第一个程序是Hello World,计算机系统学习的开始仍然是Hello World,这一节内容的介绍会尽可能的详细,包括在Ubuntu中编译的具体过程等。
二、基础知识
- 位、字节、字
位:最小数据单位(bit)
字节:8个二进制位(Byte)一个英文字母/半个汉字
字:若干字节构成字,不同机器不同 - 内存和寄存器
内存:地址n位,容量为2n个字节 eg:32位最多4G内存,每个地址只有一个 字节
寄存器:CPU内,速度快数量少 - 计算机语言
机器语言(全部由01组成)
汇编语言:与机器语言一一对应
高级语言:编译后转换为汇编语言
三、Hello World编译执行过程
-
预处理: 处理#开头的内容把器编译进来
hello.c -> hello.i
-
编译:检查规范性、语法、代码要完成的工作
hello.i -> hello.s
-
汇编: 把 .s文件转化为二进制,翻译成机器指令
hello.s -> hello.o
-
链接