您的位置:首页 > 其它

汇编-如何开始写程序(MASM5.0)

2009-05-15 11:41 295 查看
空学语言是不行的,重要的还是实践。但是开始总是最艰难的。

(偶滴MFC啊。。。弄了半天还是没弄懂怎么回事,书上在讲一堆一堆超乎理解的东西,但是总不讲怎么上机。。)

汇编的上机过程就更加难以理解了。。。指令学了一堆,不用还是白搭滴。。。

首先,汇编的程序分为两种:.exe & .com

1、编写程序

虽然有带edit.exe,不过长得很像TC,记事本都比它要美观一些,如果注重格式啊什么的,Dev 、VC都可以上。

记事本还是很强大的,word也无妨。

给一个程序,就不分析了。自己试着玩吧。

;SUM.ASM

STSG	SEGMENT	STACK	'S'
DW  32  DUP(?)
STSG	ENDS

DATA	SEGMENT
A  	DW  123
B  	DW  456
SUM	DW  ?
DATA	ENDS

CODE	SEGMENT
MAIN	PROC	FAR
ASSUME	CS:CODE, DS:DATA, SS:STSG, ES:NOTHING
PUSH	DS
XOR	AX, AX
PUSH	AX
MOV	AX, DATA
MOV	DS, AX
MOV	AX, A
ADD	AX, B
MOV	SUM, AX
RET
MAIN	ENDP
CODE	ENDS
END	MAIN


记住,写完之后保存的时候后缀改成SUM.asm就OK。

2、MASM这个SUM.ASM

建议,这个MASM呢还是放在根目录下,不然每次一堆一堆的路径很烦的。

假设放在D:/MASM里。把写好的SUM.ASM放过来在这个文件夹下,同时这里面还有一个EDIT.EXE EXE2BIN.EXE MASM.EXE LINK.EXE,不用管。

准备工作:打开很像DOS的cmd——打开方式:开始->运行->cmd(WIN+R也可)

1 输入d:,目录路径从默认的C盘改变为D盘。

2 然后输入 cd MASM 就进入到了MASM目录下。

现在可以MASM那个SUM了

3 这个时候就写吧:masm sum.asm 会出来一堆版权,然后就是obj,lst,crf了,这些可以enter过去。然后出来错误信息,这个才最重要。先假设没错,我们继续向下走。

4 这个时候MASM文件夹里出来一个SUM.OBJ,嗯嗯,很好。继续。写 link sum ,继续版权,exe,map,lib,直接enter,文件夹里就有SUM.EXE了。

5 运行啦 写SUM.EXE就OK啦~但是我的这个程序是没有输出滴,所以看不到~

3、调试

不错是神干的事,调试才是人干的事。

好吧,本来存在着D:/MASM> 然后我们输入debug sum.exe就进入调试模式啦。

-u 反汇编

-r 显示寄存器内容

-g 执行到断点处 后面+行号 例如-G9

-d 查看数据

-q 退出返回操作系统

至于各种妙处,还是自己体会吧。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: