程序的运行
hello.c:在计算机中中ASCII形式保存。而所有文件分为ASCII文件和二进制文件。
gcc程序通过以下流程,将hello.c转换为可执行目标程序:
预处理器cpp:扩展程序文本加入stdio.h形成hello.i–>编译器ccl:形成汇编程序hello.s–>汇编器as:形成可重定位二进制文件hello.o–>链接器ld:将printf.o与hello.o链接形成可执行文件,此时可以被加载到内存中。
系统硬件组成
- 总线
- I/O设备
- 主存
- 处理器:处理器的核心是一个大小为一个字的存储设备,称为程序计数器PC。
hello 程序的运行:
1. 可执行文件hello从磁盘中加载到内存;
2. 内存通过内存总线和系统总线将hello放入CPU寄存器中;
3. CPU寄存器通过系统总线和I/O总线将字符复制到显示设备;