汇编的第一天

小弟第一天学汇编,申请个blog把学习历程记录下来.请老鸟指教,请菜鸟..还有比我还菜的吗?嘿嘿.既然没有比我还菜的.大家都是老鸟啦.那就多多指教啦

先说前言.小弟废话比较多.多担待,多担待,呵呵

手头一本罗云彬的《windows环境下32位汇编语言程序设计》(正版书。要尊重罗前辈的劳动成果啊!嘿嘿。不过我这本是学校图书馆借来的。也没花钱。)一本《ibm汇编程序设计》(也是借来的,没办法,小弟穷啊T_T)。当然还有一台2000年买的破电脑。你问什么配置?嘿嘿。c600/64。别看垃圾。当年可是花了我7000多大洋啊。要是这台电脑能打魔兽才不学天书般的汇编呢。太无聊的。无奈啊。别的就没啦。够艰苦吧。哈哈

大戏上演It's show time!

仗着有点编程的基础。看了看ibm的那本书就抱起咱们罗大哥的书开干了。首先呢。打开电脑(板砖一块飞过来。。。嘿嘿。有板砖就说明有人捧场。小弟先谢谢啦!不过。这位兄弟,下次能不能找块小点的。够疼的!)。说那里去了?哦。电脑打开了。呵呵。现在要构建一个汇编的环境吧。先去AoGo汇编小站(www.aogosoft.com)下载了MASM32v8.0。这个网站真的不错。大家有空去看看。解压安装好,然后把EditPlus给复制过来,上官网去下个asm扩展。有好几个asm扩展。不过一看。嘿嘿。有个中国人制作的asm扩展。支持。就它了。下载后安装好。设置环境变量。

@echo off
set include=d:/masm32/include
set lib=d:/masm32/lib
set path=d:/masm32/bin;%path%
echo on

存为d:/s.dat
这些罗大哥的书里都有介绍。我就是一步一步按照的来的。不过这破电脑破网速也搞了我半天才搞好。科技引导生活。这话谁说的?真理啊真理!我要有太好电脑肯定早搞好了。

现在基本的环境都搞好了。至于什么反汇编的调试的啦以后用到了再说。现在就要敲代码啦。什么代码?当然是我们经典的----Hello World!掌声!打开EditPlus。建立一个asm文件。我敲啊敲啊。几分钟后搞定。

.386
.model flat,stdcall
option casemap:none
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
.data
szCaption db 'A Message Box',0
szText db 'hello world',0
.code
start:
 invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
 invoke ExitProcess,NULL
 end start

保存为d:/a/a.asm

然后点开始。运行。command。黑乎乎的dos窗口出现在我面前。首先运行d:/s.dat。接着就要MakeLove了。谁说的。反正不是我。我干的是ML!

ml /c /coff /Cp d:/a/a.asm

编译成功。(哈哈。当然。我今天下午可没这么顺。我连接第一次提示路径错误。看了看文件名我存的其实是aaa.asm改成a.asm再来。提示好多拼写错误。改了再来。通过。)好爽。得到一个a.obj文件

接着就要link了。

link /subsystem:windows d:/a/a.obj

连接成功(同理。下午我也没这么顺。先是subsystem拼写错误。然后又提示找不到kernel32.lub文件。改成kernel32.lib。通过!原来检查拼写还在不同的地方。嘿嘿)得到一个a.exe

运行a.exe成功(这步没出现什么问题。呵呵)

这就是我今天一下午的工作啦。不过过程多么曲折。最后总算成功了。虽然只是那么一小点。下班,下班吃饭啦。哈哈

各位看官,有什么问题同我交流啊。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值