【星海出品】编译信息

机器语言是用二进制书写的、计算机能直接识别的机器指令集合,CPU可以直接执行,如“将2放到一个存储单元”的机器代码“11000111 00000110 00000000 00000000 00000000 00000010”。用机器语言编程不直观,易出错,对硬件依赖性大,不同的CPU能执行的机器语言不同,可移植性差;用机器语言编写程序费时、乏味,开发难度大;程序员必须受过一定的训练,熟悉计算机硬件,这在很大程度上限制了计算机的推广和应用。为了提高程序的可读性和可写性,人们将机器语言符号化,以助记符的形式表示指令和地址,这就是汇编语言。如“将2放到一个存储单元”的汇编代码为“MOV X, 2”。用汇编语言编写程序比机器语言编写的程序快很多,且更容易理解,但汇编语言必须翻译为机器语言才能在计算机上执行。这就需要有一个程序能够将汇编语言翻译为机器语言程序,这个翻译程序称为汇编程序,又称汇编器。然后汇编语言与机器语言是一一对应的,仍然依赖于机器,程序设计效率低。

第一步:预处理。
$ gcc - E hello.c - o hello.i

第二步:编译。
$ gcc -S hello.i - o hello.s

第三步:汇编
$ gcc - c hello.s -o hello.o

第四步:链接
$ gcc hello.o - o hello

如果要使用静态链接,需要使用下面的命令

$ gcc hello.c -o hello - static
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值