masm与nasm的搭建使用

Posted kubopiy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了masm与nasm的搭建使用相关的知识,希望对你有一定的参考价值。

nasm kali中apt install nasm即可

masm:

参考这两篇文章

文章一:https://www.cnblogs.com/dgwblog/p/11865850.html

文章二:https://www.cnblogs.com/zzu-general/p/7853822.html

masm:windows

nasm:linux

要注意nasm和masm的语法不一样,masm的asm文件不能用nasm编译。

技术图片

 

 把asm文件放入masm文件夹中

在dosbox中完成挂载,输入masm回车

输入你要编译的asm文件

xxx.asm

再进行链接如图过程,最后运行exe

DATA SEGMENT
MES DB ‘Show a as hex:‘,0AH,0DH,‘$‘
SD DB ‘a‘
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET MES ;显示提示信息
MOV AH,09H
INT 21H
 MOV SI,OFFSET SD
 MOV AL,DS:[SI]
 AND AL,0F0H ;取高4 位
MOV CL,4
 SHR AL,CL
 CMP AL,0AH ;是否是A 以上的数
 JB C2
 ADD AL,07H
C2: ADD AL,30H
 MOV DL,AL ;显示字符
 MOV AH,02H
 INT 21H
 MOV AL,DS:[SI]
 AND AL,0FH ;取低4 位
 CMP AL,0AH
 JB C3
 ADD AL,07H
C3: ADD AL,30H
 MOV DL,AL ;显示字符
 MOV AH,02H
 INT 21H
 MOV AH,4CH ;返回DOS
 INT 21H
CODE ENDS
END START




































以上是关于masm与nasm的搭建使用的主要内容,如果未能解决你的问题,请参考以下文章

ASM:MASM、NASM、FASM?

需要从MASM转换到NASM

来自 NASM 的 %line 指令等效于 MASM

masm - 字母大小写转换

Nasm汇编编译器

编写自定义PE结构的程序(如何手写一个PE,高级编译器都是编译好的PE头部,例如MASM,TASM等,NASM,FASM是低级编译器.可以自定义结构)