用EditPlus配置MASM汇编

最开始写汇编程序,是打开一个记事本就写。但是记事本不是专门的程序编辑器,格式不好控制,更容易写错程序。

于是想到,能有一个简单的文本编辑器,能控制好ASM的格式,有关键字和保留字的颜色显示就好。恰好,暑假看Android开发的视频的时候,见过Mars使用过一个编辑Java程序的简单的编辑器。非常简洁,小巧,好用!貌似是EidtPlus。正好现在可以派上用场了。

1.下载安装

可以到EditPlus官网上下载最新的版本。

我这里主要图个实用就好,没在乎版本要最新的。直接在CSDN下载里面找到一个资源,带注册机的,安装时省得自己去找序列号。

给出链接:http://download.csdn.net/detail/rainyit/713386

2.配置语法高亮

EidtPlus默认的语法的格式类型有HTML/C/C++/JAVA/PERL/JS/JSP/PHP/CSS/XML/C#/VB 等等,但还没有ASM汇编的语法类型显示。这个时候就需要添加ASM类型语法。

首先需要准备ASM的语法文件:

#TITLE=ASM
; Assemble syntax file written by LuoYunBin

#DELIMITER=,(){}[]-+*%/="''''~!&|<>?:;.#
#QUOTATION1=''''
#QUOTATION2="
#CONTINUE_QUOTE=n
#LINECOMMENT=;
#LINECOMMENT2=
#COMMENTON=
#COMMENTOFF=
#COMMENTON2=
#COMMENTOFF2=
#ESCAPE=/
#CASE=n
#PREFIX1=
#PREFIX2=
#PREFIX3=
#PREFIX4=
#PREFIX5=
#SUFFIX1=
#SUFFIX2=
#SUFFIX3=
#SUFFIX4=
#SUFFIX5=

#KEYWORD=Compiler directives
include
includelib
define
286
386
486
586
model
data
segment
code
const
begin
ends
end
proc
endp
local
option
proto
struct

#KEYWORD=Assume & Macro
if
elseif
else
endif
repeat
until
untilcxz
while
endw
break
continue
macro
endm
exitm
for
forc
goto
word
byte
dword
qword
real4
real8
real10
tbyte
db
dw
dd
dq
ptr
near
far
short
extrn
equ
offset
addr
invoke
flat
stdcall
casemap
none
uses
popup
menuitem
font
caption
style
exstyle
discardable
icon
bitmap
cursor
menu
stringtable
dialog
dialogex
edittext
defpushbutton
pushbutton
ltext
control
lib
assume
nothing

#KEYWORD=instruction
aaa
aad
aam
aas
adc
add
and
arpl
bound
call
cbw
clc
cld
cli
clts
cmc
cmp
cmpsb
cmpsw
cwd
daa
das
dec
div
enter
esc
hlt
idiv
imul
in
inc
insb
insw
int
into
iret
ja
jae
jb
jbe
jcxz
je
jg
jge
jl
jle
jmp
jnb
jnbe
jne
jnle
jno
jnp
jnz
jpo
jz
jo
jp
js
jns
lahf
lar
lds
lea
leave
les
lgdt
lidt
lldt
lmsw
lock
lodsb
lodsw
loop
loopnz
loopz
lsl
ltr
mov
movsb
movsw
mul
neg
nop
not
or
out
outsb
outsw
pop
popa
popf
push
pusha
pushf
rcl
rep
repnz
repz
ret
reft
rol
ror
sahf
sar
sbb
scasb
scasw
sgdt
shl
shr
sldt
smsw
stc
std
sti
stosb
stosw
str
sub
test
wait
verr
verw
xchg
xlat
xor
bsf
bsr
bt
btc
btr
bts
cdq
cwde
iretd
lfs
lgs
lss
movsx
movzx
popad
popfd
pushad
pushfd
seta
setb
setbe
sete
setg
setl
setle
setnb
setne
setnl
setno
setnp
setns
seto
setp
sets
shld
shrd
cmpsd
stosd
lodsd
movsd
scasd
insd
outsd
jecxz
bswap
cmpxchg
invd
invlpg
wbinvd
xadd
fabs
fadd
faddp
fbld
fbstp
fchs
fclex
fcom
fcomp
fcompp
fdecstp
fdisi
fdiv
fdivp
fdivr
fdivrp
feni
ffree
fiadd
fiacom
fiacomp
fidiv
fidivr
fild
fimul
fincstp
finit
fist
fistp
fisub
fisubr
fld
fldcwr
fldenv
fldlg2
fldln2
fldl2e
fldl2t
fldpi
fldz
fld1
fldcw
fmul
fmulp
fnop
fnsts
fpatan
fprem
fptan
frndint
fsavent
fscale
fsetpm
fsqrt
fst
fstcw
fstenv
fstp
fstsw
fsub
fsubp
fsubr
fsubrp
ftst
fwait
fxam
fxch
fxtract
fyl2x
fyl2xpi
f2xm1
fcos
fsin
fprem1
fsincos
fucom
fucomp
fucompp

#KEYWORD=CPU Registers
eax
ax
ah
al
ebx
bx
bh
bl
ecx
cx
ch
cl
edx
dx
dh
dl
esi
si
edi
di
esp
sp
ebp
bp
eflags
flags
cs
ds
es
ss
fs
gs
st
cr
dr
tr
gdtr
ldtr
idtr
新建一个txt文件,把上面的内容复制进去,保存成asm.stx。此处我放在EidtPlus的安装根目录下。

工具---->参数选择--->点击左边树状目录,文件下的语法--->添加

描述:ASM

文件扩展名:asm

语法文件:D:\EditPlus\asm.stx

右边还可以设置每一类关键字的颜色。

点击确定后,完成!

用EditPlus配置MASM汇编_第1张图片

注意,到这里,只是完成了ASM文件语法高亮的显示。后续的编译,连接,调试和运行,还是需要再DOS窗口用命令行的方式来实现。写完代码,EidtPlus保存.asm文件。

其实也可以把编译,连接,调试和运行加入到EidtPlus里面去,但是对于新手来讲,还是很有必要熟悉用命令行的方式。

下面给出配置的方法,仅供大家参考:

此处使用的编译器是MASM v6.15,安装路径为E:\MASM,下面就以这个路径为例来说说整个配置过程:


1.配置编译器:
工具->配置用户工具,在弹出的对话框中单击 添加工具->程序,然后按照下面的内容填写对应文本框,并勾选 捕捉输出。

菜单文本:编译(&C)

命令:E:\MASM\ML.EXE

参数:/I. /Zm /c /Ta $(FilePath)

初始目录:$(FileDir)

2.配置连接器

添加工具->程序,然后按照下面的内容填写对应文本框,并勾选 捕捉输出。

菜单文本:连接(&L)

命令:E:\MASM\LINK.EXE

参数:$(FileNameNoExt).OBJ;

初始目录:$(FileDir)

3.配置调试器

添加工具->程序,然后按照下面的内容填写对应文本框,并勾选 退出时关闭窗口。

菜单文本:调试(&D)

命令:DEBUG

参数:$(FileNameNoExt).EXE

初始目录:$(FileDir)

4.运行

添加工具->程序,然后按照下面的内容填写对应文本框。

菜单文本:运行(&R)

命令:$(FileNameNoExt).EXE

参数:

初始目录:$(FileDir)


我大概配置了一遍,可以实现编译,连接,调试和运行。但是,马上修改保存之后,却不能再次编译了。还得再次打开文件,重新编译。这样就有点繁琐。后面我也没用,用的命令行。大家有实现的多次编译的方法的麻烦告诉我。

另外如果你需要一个完整的程序编译器,或者对程序编译器的要求很高,可以使用 masm for windows 集成实验环境。不用自己配置,使用也还方便。

你可能感兴趣的:(Assembly)