当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 12 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : NASM的用法
帖子发表于 : 2008-10-15 21:50 

注册: 2008-07-15 13:01
帖子: 108
送出感谢: 0 次
接收感谢: 0 次
我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


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

万分感谢~~~~~~~~~~~~~~~~!!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-10-16 12:30 

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


页首
 用户资料  
 
3 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-10-16 12:30 

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


页首
 用户资料  
 
4 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-10-16 22:15 

注册: 2008-07-15 13:01
帖子: 108
送出感谢: 0 次
接收感谢: 0 次
。。。我自己回答了

网上还是有相关资料的,不过现在只找到几个最基本的。
首先,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


页首
 用户资料  
 
5 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-10-21 11:30 
头像

注册: 2008-05-03 23:05
帖子: 383
送出感谢: 0 次
接收感谢: 0 次
汇编我几乎一窍不通,MASM接触过一点点,nasm就没用过
不过发现LZ的一点理解错误:linux下面是不是可执行文件不是看扩展名的 :em02

能不能执行就看文件的属性,如果属性是可执行的,那就可以执行,扩展名只是方便人类阅读
比如所说a.out,那是默认由GCC编译连接成的可执行文件的名字,但是可以随便指定名称,如果我写 gcc -Wall nitingjimo.c -o nitingjimo.haha
那生成的可执行文件就是nitingjimo.haha 但是不能说haha就是可执行文件阿...


页首
 用户资料  
 
6 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-11-05 21:47 

注册: 2008-07-15 13:01
帖子: 108
送出感谢: 0 次
接收感谢: 0 次
Final_x 写道:
汇编我几乎一窍不通,MASM接触过一点点,nasm就没用过
不过发现LZ的一点理解错误:linux下面是不是可执行文件不是看扩展名的 :em02

能不能执行就看文件的属性,如果属性是可执行的,那就可以执行,扩展名只是方便人类阅读
比如所说a.out,那是默认由GCC编译连接成的可执行文件的名字,但是可以随便指定名称,如果我写 gcc -Wall nitingjimo.c -o nitingjimo.haha
那生成的可执行文件就是nitingjimo.haha 但是不能说haha就是可执行文件阿...


:em03 哦,是这样呀,多谢了哦


页首
 用户资料  
 
7 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2008-12-04 20:02 

注册: 2008-11-15 16:14
帖子: 39
送出感谢: 0 次
接收感谢: 0 次
你可以在Ubuntu下用masm的,真的,具体方法看我的校内网,很简单的,o(∩_∩)o...哈哈
我发表日志了。http://blog.xiaonei.com/GetEntry.do?id=341324020&owner=228077449


页首
 用户资料  
 
8 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2009-05-30 0:22 

注册: 2009-05-22 21:49
帖子: 5
送出感谢: 0 次
接收感谢: 0 次
nitingjimo 写道:
我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


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

万分感谢~~~~~~~~~~~~~~~~!!

不就是sudo apt-get install nasm
我的就是这么装上的,呵呵,我是新手,不知道对不对。
一起进步。


_________________
http://hi.baidu.com/bleach007

一个迷失在程序里的小孩……


页首
 用户资料  
 
9 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2010-06-11 7:26 
头像

注册: 2009-06-23 17:17
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
nitingjimo 写道:
我刚用LINUX不久,很多东西都不会,但是现在在学汇编,可是不会用NASM
网上关于NASM的资料不全面,各位大虾指教啊


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

万分感谢~~~~~~~~~~~~~~~~!!

lz向你请教关于nasm的使用啊。。。


_________________
dream in code


页首
 用户资料  
 
10 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2010-06-11 8:16 

注册: 2009-01-07 15:19
帖子: 153
送出感谢: 1
接收感谢: 0 次
:em05

给你个链接

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

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

调试可以gdb 或者ald

gdb hello.o,就是链接之前的那个东东,我这里链接后就调试不了了不知道为啥


_________________
大家好,我是计算机系大学生,玩电脑也 7.8 年了吧,可是这个系统为什么XXX,就不能XXX,连我这种XXX都XXX,怎么能够推广,看来XXX路还很长XXX,搞不懂你们这些XXX,再见了XXX


页首
 用户资料  
 
11 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2010-06-15 15:02 

注册: 2007-06-30 12:36
帖子: 23
地址: 四川
送出感谢: 0 次
接收感谢: 0 次
学习 在WIN下的还没弄清楚呢!
UBUNTU装上10.04


页首
 用户资料  
 
12 楼 
 文章标题 : Re: NASM的用法
帖子发表于 : 2010-10-14 22:05 
头像

注册: 2010-09-02 14:16
帖子: 41
送出感谢: 0 次
接收感谢: 0 次
谢谢,迷茫了好大一会终于有点眉目了


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 12 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译