汇编语言环境的搭建之第一个汇编源程序

  这学期开始学习汇编语言,不过说实话,有点不太顺利,和以前学高级语言的时候不一样,毕竟不是属于同一层次上的语言,感觉最大的变化就是硬件的相关性太强了。当初学完C语学C++很快就上手了,学完C++学java时感觉更简单,从此我以为学语言就是这么简单,可汇编着实给我一个打击。 其实就个人而言,实际上相当讨厌那些编书的人不站在读者的角度考虑问题,至少没有站在我这样的读者角度。

  粗略浏览几本汇编的书,清一色的上来都是一些枯燥的硬件知识。看了好多页,也不见一个程序,以至于让人望穿秋水,还不得不很遗憾的疑惑的在脑子里暗骂道“我他妈怎么写程序啊”。个人感觉到这种程度上,这已经是一本失败的书,原因很简单,他不能让人产生兴趣,而程序员的最大动力就是兴趣,那怕是黑色框框上一行简单的“hi world”,我承认硬件知识这种东西很重要(不好意思,它不是东西),但是通篇这种内容就是垃圾,关键是有些非常“经典”的书籍还把这种垃圾发挥到极致,以至于看完书你也不一定知道怎么写程序。

  本人的观点很简单,就是看到结果,汇编再另类,它也是编程语言,既然如此,告诉我两样知识:一,如何搭建开发环境,二,如何使自己的程序运行。下面即开始分别介绍,由于本人愚笨也是今天才搞定,所以如有错误之处,请指出。

  一,开放环境的搭建(windows 下)

  1,那东西叫masm(什么?那东西?对就是那东西,专业术语我也不会),下载地址:http://ishare.iask.sina.com.cn/search.php?key=masm&from=index&format=

  2,解压后放在系统的任何路径下,比如本人放在“D:\masm”;

  3,将“D:\masm”加入系统环境变量,至于怎么加,学过java的不会陌生,如果不会可以google一下;

  4,打开命令提示符,运行masm命令,若出现那些信息(什么信息你懂的)则证明已经成功了。

   二,你第一个程序(它的名字叫hi world)

  1,原封不动的复制下面的程序,打开记事本,粘贴内容,保存hi.asm,注意扩展名是.asm;

;本程序来自网络,具体链接位置记不起了,见谅。
data segment            
tab db 'hi world$'  
data ends   
code segment           
assume cs:code, ds:data  
start:                               
        mov ax,data
        mov ds,ax                
        lea dx,tab                
        mov ah,9h
        int 21h                    
        mov ah,4ch
        int 21h                    
 code  ends                    
        end start                 

  2,打开命令行,定位路径到程序所在位置;

  3,运行命令masm hi.asm,你会看到很多信息,包括一些提示,可以不输入,一路enter,如果不出意外,目标文件会出现:hi.obj;

  4,链接(也可能是连接,我不太清楚),运行命令link hi.obj文件,这时就该有.exe可执行文件出现了,是不是有一种看到亲人般的激动。

  5,运行hi.exe,此时,那白底黑字的小框框上会出现几个很可爱的字符“hi world”,一时间悲喜交加,算了,一切尽在不言中。 汇编语言的路很长,一切编程语言的路都很长,入门是关键,学得怎么样,还要看自己以后的修行。

posted @ 2011-09-15 21:37  zyqhi  阅读(272)  评论(1编辑  收藏  举报