原创 汇编语言程序初步练习

2008-10-23 21:54 5250 6 6 分类: 工程师职场

最近练习80x86的汇编程序,感觉挺好玩的,其实学什么都是只要入门了就好了。下面分享一下在XP系统中由cmd进入DOS状态下的汇编程序操作的入门过程:


先保证你的电脑中装有了汇编程序包含有MASM.exe等文件,好使的MASM5.0文件包https://static.assets-stash.eet-china.com/album/old-resources/2008/10/31/7c8ec8f0-4ce3-4138-a7b8-19bc2fbff435.rar。将其解压缩后放在C盘中。下面以其在命名为asm的文件夹中作为操作示例。


首先点击“开始”中的运行,键入“cmd”命令如下图:


edad48d6-db76-4038-bfd9-9b0fc8cd763f.JPG


点击确定后在进入的界面闪烁光标后:


点击看大图


继续键入MASM A就可以编译已经编好存于同一文件夹的文件名为A的汇编源程序了。如下图:


ac8bf286-756d-4998-964e-5d15ceb36d05.JPG


可以一路敲回车到编译结束提示编译结果为止,如下图:点击看大图


有提示错误,类型不匹配等错误,返回源代码文件修改后再次编译直到成功没有错误:点击看大图


此时就可以继续键入命令”LINK A“,完成程序的链接生成可执行文件A.exe。


然后键入命令”DEBUG A.EXE"进行程序的调试,在“-”提示符后键入DEBUG调试命令就能看到程序的运行过程和状态了。“T"命令可以实现程序的单步执行,如下图:点击看大图


程序运行完后(本程序为出现”NOP“指令时)键入”D 1492:0”就可以查看程序运行后的结果了。如下图:点击看大图


第一行中间连续的内容为“04 00 02 00 06”即为,A=4H,B=00H,C=02H,D=00H,E=06H.计算结果正确。继续键入“Q”命令就退出DEBUG调试状态了。


在DOS状态大小写不区分,而在DEBUG状态则需要区分大小写,命令都只能用大写。


 


文件A.asm的内容为:


DATA SEGMENT
A DB 4
B DB 2
C DB ?
D DB ?
E DB ?
F DB ?
DATA ENDS
CODE SEGMENT
     ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
      MOV DS,AX


      MOV AL,A  ;A+B=C
      ADD AL,B
      MOV C,AL


      MOV AL,A  ;A-B=D
      SUB AL,B
      MOV D,AL


      MOV AL,A  ;A*B=E
      IMUL B
      MOV E,AL
     
      MOV AL,A  ;A/B=F
      CBW
      IDIV B
      MOV F,AL
     
      MOV AH,4CH
      INT 21H
CODE ENDS
    END START


可以用记事本编辑,然后在文件夹”工具“->”文件夹选项“->”单看“->”隐藏已知文件类型“,将框中的勾去掉点”确定“。然后就可以将A.txt文件重命名,为A.asm就实现保存为asm汇编源文件类型了。e92ae227-d77b-4a5b-af06-74f05197d987.JPG


也可以在已经调出DOS的环境下键入”EDIT“命令打开编辑器界面进行源代码的编辑保存。


如下图:点击看大图



 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条