不同版本的masm在用法上有很大不同,这里所指的是masm6.14及以上版本的编译器ml.exe的命令行用法。
ml [/选项] 汇编源文件列表 [/link 链接选项]
例如 ml /c /coff /Cp Test.asm (多个选项之间一定要加空格)
下边是ml的选项
/AT
/Bl filename 选择其他的连接器
/c 只编译,不连接
/coff 生成Microsoft公共目标文件格式(common object file format)的目标文件
/Cp
/Cu 映射所有标识符的大小写
/Cx 保留公共和外部符号的大小写(默认)
/D sysmbol[=value] 定义给定名字的文本宏。如果没有value部分,文本宏为空。定义中以空格隔开的多个符号必须以引号引起来。
/EP 生成一个预处理后的列表文件(发送到STDOUT).参见/Sf
/F hexnum 把堆栈大小设为hexnum个字节(这与/link /STACK:number是相同的)。值必须以十六进制格式表示。F和hexnum之间必须有一个空格。
/Fe filename 指定可执行文件名
/Fl[ filename] 生成一个汇编代码列表文件。参见/Sf
/Fm[ filename] 创建一个链接映像文件。
/Fo filename 指定目标文件名
/FPi 为浮点运算生成模拟代码(只用于混合语言编程).
/Fr[ filename] 生成.SBR源浏览文件。
/FR[ filename] 生成扩展形式的.SBR源浏览文件。
/Gc 指定使用FORTRAN或Pascal格式的函数调用约定和命名约定
/Gd 指定使用C格式的函数调用约定和命名约定。
/Gz 使用STDCALL调用约定。
/H number 外部名字限制为number个有效字符,默认是31个字符。
/help 调用ML的快速帮助。
/I pathname 设置包含文件路径。最多允许10个/I选项
/link 连接器选项和库
/nologo 在编译成功的情况下屏蔽编译器输出的信息。
/omf 产生OMF(Microsoft Object Module Format)文件。这种格式是老式16位Microsoft连接器(LINK16.EXE)所要求的。
/Sa 打开所有可用信息列表.
/Sc 在列表文件中增加指令执行时间信息。
/Sf 在列表文件中增加第一遍编译后的列表信息。
/Sg 使得MASM生成的带追出现在列表文件中。例如,如果想要查看.IF和.ELSE伪指令如何工作,则可以使用该选项。
/Sl width 设置列表文件中行的宽度,按每行字符数计算。抚慰在60~255之间,或者为0.默认情况下是0,同PAGE width伪指令。
/Sn 生成列表文件时关闭符号表。
/Sp length 设置列表文件每页的长度,按行数计算。范围是10~255,或者为0,默认情况下是0.同PAGE length伪指令。
/Ss text 为列表文件指定子标题,同SUBTITLE text。
/Sx 允许在列表文件中列出为假的条件块的清单。
/Ta filename 汇编不以.ASM扩展名结尾的源文件。
/w 同/W0。
/W level 设置警告级别,level=0,1,2,3
/WX 视警告为错误。
/X 忽略INCLUDE环境路径
/Zd 在目标文件中生成行号信息。
/Zf 使所有符号变成公共符号。
/Zi 在目标文件生成CodeView需要的调试信息。
/Zm 打开M510选项,以最大程度地同MASM5.1兼容。
/Zp[alignment] 对结构指定的字节边界对齐。alignment可以使1,2或4
/Zs 只进行参数检查。
/? 显示ML命令行选项的帮助信息。
/error Report 把汇编器内部的错误信息报告给Microsoft