NASM的用法

其它类软件,非上述版软件
回复
nitingjimo
帖子: 108
注册时间: 2008-07-15 13:01
送出感谢: 0
接收感谢: 0
联系:

NASM的用法

#1

帖子 nitingjimo » 2008-10-15 21:50

我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


我想了解LINUX下用NASM生成什么格式的文件是 ‘可执行文件’
具体命令为什么,如果有可能希望列举经常用的NASM指令,包括编译,连接(不
知LINUX下要不要连接),调试

万分感谢~~~~~~~~~~~~~~~~!!
nitingjimo
帖子: 108
注册时间: 2008-07-15 13:01
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#2

帖子 nitingjimo » 2008-10-16 12:30

怎么无人问咯 :em19
nitingjimo
帖子: 108
注册时间: 2008-07-15 13:01
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#3

帖子 nitingjimo » 2008-10-16 12:30

怎么无人问咯 :em19
nitingjimo
帖子: 108
注册时间: 2008-07-15 13:01
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#4

帖子 nitingjimo » 2008-10-16 22:15

。。。我自己回答了

网上还是有相关资料的,不过现在只找到几个最基本的。
首先,LINUX下的可执行文件格式是elf(据说还有个a.out,不过好像不常见了)

nasm -f elf myfile.asm
将asm文件编译成myfile.o(obj文件);

nasm -f bin myfile.asm -o myfile.com
把文件'myfile.asm'汇编成纯二进制格式的文件'myfile.com';

nasm -f coff myfile.asm -l myfile.lst
以十六进制代码的形式产生列表文件输出,并让代码显示在源代码的左侧,
使用'-l'选项并给出列表文件名

ld -s -o hello hello.o
连接成可执行的elf文件

调试的还在学习中 :em11
头像
Final_x
帖子: 383
注册时间: 2008-05-03 23:05
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#5

帖子 Final_x » 2008-10-21 11:30

汇编我几乎一窍不通,MASM接触过一点点,nasm就没用过
不过发现LZ的一点理解错误:linux下面是不是可执行文件不是看扩展名的 :em02

能不能执行就看文件的属性,如果属性是可执行的,那就可以执行,扩展名只是方便人类阅读
比如所说a.out,那是默认由GCC编译连接成的可执行文件的名字,但是可以随便指定名称,如果我写 gcc -Wall nitingjimo.c -o nitingjimo.haha
那生成的可执行文件就是nitingjimo.haha 但是不能说haha就是可执行文件阿...
nitingjimo
帖子: 108
注册时间: 2008-07-15 13:01
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#6

帖子 nitingjimo » 2008-11-05 21:47

Final_x 写了:汇编我几乎一窍不通,MASM接触过一点点,nasm就没用过
不过发现LZ的一点理解错误:linux下面是不是可执行文件不是看扩展名的 :em02

能不能执行就看文件的属性,如果属性是可执行的,那就可以执行,扩展名只是方便人类阅读
比如所说a.out,那是默认由GCC编译连接成的可执行文件的名字,但是可以随便指定名称,如果我写 gcc -Wall nitingjimo.c -o nitingjimo.haha
那生成的可执行文件就是nitingjimo.haha 但是不能说haha就是可执行文件阿...
:em03 哦,是这样呀,多谢了哦
jun2ran
帖子: 39
注册时间: 2008-11-15 16:14
送出感谢: 0
接收感谢: 0

Re: NASM的用法

#7

帖子 jun2ran » 2008-12-04 20:02

你可以在Ubuntu下用masm的,真的,具体方法看我的校内网,很简单的,o(∩_∩)o...哈哈
我发表日志了。http://blog.xiaonei.com/GetEntry.do?id= ... =228077449
stilling2006
帖子: 5
注册时间: 2009-05-22 21:49
送出感谢: 0
接收感谢: 0

Re: NASM的用法

#8

帖子 stilling2006 » 2009-05-30 0:22

nitingjimo 写了:我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


我想了解LINUX下用NASM生成什么格式的文件是 ‘可执行文件’
具体命令为什么,如果有可能希望列举经常用的NASM指令,包括编译,连接(不
知LINUX下要不要连接),调试

万分感谢~~~~~~~~~~~~~~~~!!
不就是sudo apt-get install nasm
我的就是这么装上的,呵呵,我是新手,不知道对不对。
一起进步。
http://hi.baidu.com/bleach007

一个迷失在程序里的小孩……
头像
bencharluo
帖子: 6
注册时间: 2009-06-23 17:17
送出感谢: 0
接收感谢: 0

Re: NASM的用法

#9

帖子 bencharluo » 2010-06-11 7:26

nitingjimo 写了:我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


我想了解LINUX下用NASM生成什么格式的文件是 ‘可执行文件’
具体命令为什么,如果有可能希望列举经常用的NASM指令,包括编译,连接(不
知LINUX下要不要连接),调试

万分感谢~~~~~~~~~~~~~~~~!!
lz向你请教关于nasm的使用啊。。。
dream in code
afphoenix
帖子: 153
注册时间: 2009-01-07 15:19
送出感谢: 1 次
接收感谢: 0

Re: NASM的用法

#10

帖子 afphoenix » 2010-06-11 8:16

:em05

给你个链接

http://tldp.org/HOWTO/Assembly-HOWTO/

要debug 编译的时侯加 -g 参数

调试可以gdb 或者ald

gdb hello.o,就是链接之前的那个东东,我这里链接后就调试不了了不知道为啥
大家好,我是计算机系大学生,玩电脑也 7.8 年了吧,可是这个系统为什么XXX,就不能XXX,连我这种XXX都XXX,怎么能够推广,看来XXX路还很长XXX,搞不懂你们这些XXX,再见了XXX
夜鹰
帖子: 23
注册时间: 2007-06-30 12:36
来自: 四川
送出感谢: 0
接收感谢: 0
联系:

Re: NASM的用法

#11

帖子 夜鹰 » 2010-06-15 15:02

学习 在WIN下的还没弄清楚呢!
UBUNTU装上10.04
头像
zhenggeouc
帖子: 41
注册时间: 2010-09-02 14:16
送出感谢: 0
接收感谢: 0

Re: NASM的用法

#12

帖子 zhenggeouc » 2010-10-14 22:05

谢谢,迷茫了好大一会终于有点眉目了
回复

回到 “其它类软件”