您的位置:首页 > 编程语言 > PHP开发

Masm与EditPlus配置

2011-10-15 23:51 323 查看
方法一

一 EditPlus与Masm版本的选择:

我个人选择的是EditPlus3.11和Masm615。将Masm615默认安装在C盘,这时候多了个C:/Masm615的文件夹,再安装EditPlus。

二 Masm615配置:

C:/Masm615,里面有两个bat文件。make16.bat, make32.bat,只是提供了一些编译时候的参数选项。可以将它们复制到你喜欢的地方,比如D:/ASM等,注意:文件夹中别带空格,比如D:/My
Asm等。因为EditPlus配置的时候会有点问题,所以最好别带空格。

三 EditPlus配置:

1.下载语法文件模板(下载地址http://editplus.com/others.html)。找到masm615.zip下载,然后解压,放到C:/Program
Files/EditPlus 3(通常语法文件都放回EditPlus的目录,以免不见了)。
这些语法文件怎么用?在Tools->Preferences->Files->Settings & syntax 。右边的属性页上点击add...按钮,输入asm,按下OK。接着File extensions输入asm;inc.在syntax file选择asm.stx所在的路径和名字,选择后,语法文件处出现
C:/Program Files/EditPlus 3/MASM615.stx的字样(如图一)。到这里语法文件配置完毕,以后汇编语句的关键词就有语法着色。




2.EditPlus定义自己的工具
选Tools->Preferences->Tool->User tools,按右边的Add Tool->Program。
在Menu text 文本处打上编译16bit,
Command处选择D:/Asm/make16.bat
Argument[参数]处,选择File Name Without Extension[文本名称(无扩展名)], 就多了$(FileNameNoExt), Initial directory[起始目录]处 选择File Directory[文件目录],就多了$(FileDir)。设置好后如图二。




你确定退出对话框,看到工具菜单多了菜单项 编译16bit Ctrl+1, 之后你选择这个菜单项,或者按Ctrl+1, 就直接编译你的文件了。上面是编译16bit的asm文件, 当然你可以用同样的方法添加菜单项compile 32bit, 编译32bit的asm文件。

方法二

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)

5.配置语法高亮

接下来是配置语法高亮:工具->首选项 在对话框的树形控件中选择 文件->设置和语法。然后添加一个文件类型,并选择语法高亮文件就行了。

下面附EditPlus用MASM v6.15的语法高亮代码(复制代码到记事本,然后保存为asm.stx用EditPlus载入就行了):

#TITLE=Assembler x86 Processor For MASM lastest version 6.15

; Support MASM615 For 8086 commands

#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=Directives

ASSUME

DUP

END

ENDS

FAR

NEAR

OFFSET

PTR

SEG

SEGMENT

SHORT

#KEYWORD=Commands

AAA

AAD

AAM

AAS

ADC

ADD

AND

BOUND

BSF

BSR

BSWAP

BT

BTC

BTR

BTS

CALL

CBW

CDQ

CLC

CLD

CLI

CMC

CMP

CMPS

CMPSB

CMPSW

CMPSD

CMPXCHG

CWDE

DAA

DAS

DEC

DIV

ENTER

HLT

IDIV

IMUL

IN

INC

INS

INSB

INSW

INSD

INT

INTO

IRET

JE

JNE

JA

JNA

JAE

JNAE

JB

JNB

JBE

JNBE

JG

JNG

JGE

JNGE

JL

JNL

JLE

JCXZ

JECXZ

JMP

LAHF

LDS

LES

LFS

LGS

LSS

LEA

LEAVE

LOCK

LODS

LOOSB

LODSW

LODSO

LOOP

LOOPW

LOOPD

LOOPE

LOOPZ

LOOPNE

LOOPNZ

MOV

MOVS

MOVSB

MOVSW

MOVSD

MOVSX

MOVZX

MUL

NEG

NOP

NOT

OR

OUT

OUTS

OUTSB

OUTSW

OUTSD

POP

POPA

POPAD

POPF

POPFD

PUSH

PUSHA

PUSHDA

PUSHF

PUSHFD

PUSHW

PUSHD

RCL

RCR

REP

REPZ

REPE

REPNE

REPNZ

RET

RETN

RETF

ROL

ROR

SAHF

SAL

SAR

SBB

SCAS

SCASB

SCASW

SCASD

SET

SHL

SHLD

SHR

SHRD

STC

STD

STOS

STOSB

STOSW

STOSD

SUB

TEST

WAIT

XADD

XCHG

XLAT

XLATB

XOR

#KEYWORD=Register

AX

AH

AL

BX

BH

BL

CX

CH

CL

DX

DH

DL

SI

DI

SP

BP

IP

CS

SS

DS

ES

PSW

#KEYWORD=Type

DB

DW

DD

BYTE

WORD

DWORD

#
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: