科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件MASM5命令行

MASM5命令行

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

最近在了解X86汇编语言,因为要用到微软的MASM5,在使用过程中发现一个很不方便的地方。

作者:游龙 来源:CSDN 2008年3月27日

关键字: 命令行 MASM5 汇编语言 Linux

  • 评论
  • 分享微博
  • 分享邮件

最近在了解X86汇编语言,因为要用到微软的MASM5,在使用过程中发现一个很不方便的地方

例如:masm 1.asm

Microsoft (R) Macro Assembler Version 5.00
Copyright (C) Microsoft Corp 1981-1985, 1987.  All rights reserved.

Object filename [1.OBJ]:
Source listing  [NUL.LST]:
Cross-reference [NUL.CRF]:

  50586 + 415030 Bytes symbol space free

      0 Warning Errors
      0 Severe  Errors 

这里要按很多回车才采用默认的输出1.OBJ,NUL.LST,NUL.CRF

试了才发现这样就可以完美地解决问题

masm 1.asm,1.OBJ,NUL.LST,NUL.CRF,

大家看出什么了吗?呵呵,这样都可以

masm 1.asm,,,,   这个会有1.map,1.crf输出    

同样的 masm 1.asm,1,NUL,NUL,

总结得出的是:“参数可以从命令行中用逗号隔开一个一个传给MASM编译程序”

于是,也得出了

link 1.obj,1.exe,NUL.MAP,,

以后编译程序就方便多了,可以用批处理,另外可以写MAKEFILE文件

fileName = 1
fileExte = exe
obj = 1.obj

$(fileName).$(fileExte):$(obj)
    link $(obj),,NUL,,
   
$(obj):
  masm $(fileName).asm,,NUL,NUL
   
clean:
    del *.obj
    del $(fileName).exe

批处理这里就不给出,因为比较简单了。了解上面的原理就行

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章