首页 > 代码库 > X86平台下用汇编写"HelloWorld"

X86平台下用汇编写"HelloWorld"

首先需要安装一个汇编器,我用的是Nasm,这个汇编器在Linux下安装还是很简单的。

Nasm下载地址http://www.nasm.us/pub/nasm/releasebuilds/

在下载之后对其进行解压,然后进入到其目录下,会发现有configure文件,接下来相信对于熟悉Linux的同学就知道该怎么办了。

输入./configure然会待其执行完成后,会发现在目录下生成了一个Makefile文件,这是输入make命令,就可以完成对Nasm的编译了

然后进入root,输入make install对Nasm进行安装即可了。然后如果你的机器上没有gcc的话可以安装下gcc这里自己去搜索引擎找就行了,因为我这里已经安装了gcc所以这里不再多说。

 

接下来就可以编写helloworld的汇编代码了,我这里参考的是维基百科上的代码示例

  section .data     msg     db      Hello, world!,0xA     len     equ     $-msg      section .text global  _start _start:         mov     edx,len         mov     ecx,msg         mov     ebx,1         mov     eax,4         int     0x80          mov     ebx,0         mov     eax,1         int     0x80

然后将编辑的文件保存,起始后缀名没什么关系,后缀名在Linux下只是给人看的罢了,保存之后,输入nasm -f elf32 文件名,然后会发现在该命令执行完成后

生成了一个 文件名.o的文件,然后输入ld 文件名.o -o 文件名  执行完成后,就生成了我们平时使用的可以执行文件。

此时输入./文件名 就会出现Hello World了。