DOSBox0.74以及汇编编译器的安装使用(虚拟)64位

64位安装和使用方法:

首先在D盘或其他盘(最好不要在C盘)新建一个名为 masm 的文件夹(名字可以任意,建议用masm).

从https://pan.baidu.com/s/1xaMIR-QBJx0jUcotEsT6oA下载实验软件-微机原理,并解压,打开文件如下图所示:

打开64bit,再打开64bit目录下的masm(注意:不是我们新建的masm)

 

接着我们选中DEBUG.EXE, DOSXNT.EXE , LINK.EXE ,MASM.EXE ,ML.EXE复制到我们刚新建的文件夹中:

 

 

 

完成上述步骤后安装DOSBox0.74-win32-installer,在微机原理64bit 目录下masm中,安装完后桌面会出现该软件的图标:

 

 

 

打开该软件,这里需要设置一下路径以模拟DOS模式:

 

 

其中mount是必写单词,然后空格,接着c:也是必写字段,空格,后面则设置我们刚刚新建的(用于存放编译链接程序的)文件夹,我这里是d:\masm 输入完成后按下ENTER键,接着下一行出现Z:\> 输出c:回车即可。

 

我们先debug一下看下模拟得怎样

 

 

 

 

可以看出模拟的还是比较好的。

 

说了那么多,我们写一个小程序,并且编译链接生成exe文件后用debug跟踪一下看看效果如何

 

 

该程序将改写内存中的数据,将会引起死机(注意:不是真的电脑死机,而死DOSBox模拟器死机)

 

我们用Notepad++这个软件来编写汇编程序(也可以用记事本,后缀名改为asm即可)

 

 

 

 

在语言那里选择汇编语言即可(Assembly)这里我们将源程序保存到刚刚新建的masm目录下

 

可以看到我们的源程序test.asm,接着就是编译链接的步骤了,首先win+R打开运行,并且输入cmd后回车

 

 

接着输入刚刚新建masm文件夹所在的盘,我这里是D盘,所以输入D: 然后回车

 

 

接着打开masm 输入cd masm (cd 是打开文件夹指令)

 

然后进行编译

 

 

编译的格式是 masm 源程序文件名.asm  所以我这里是masm test.asm 按下ENTER键完成编译,编译后我们可以看到刚刚新建的masm目录下多了test.obj文件

 

 

编译就算完成了,我们还要进行连接工作才能生成exe文件

 

连接步骤如下:

 

win+R打开运行,输入cmd,并打开masm目录(步骤与上述相同,这里不再详细)

接着输入link

 

 

这里输入我们刚刚生成的obj文件,注意:后缀和名字一起输入,接着输入生成exe文件的文件名,我们还是用test

 

然后下面一直按ENTER键就ok了,下面都是生成中间产物,我们没必要关心

 

 

然后在新建的masm目录下我们可以看到我们可爱的exe文件了

 

 

 

直接运行是不可以的(应该是版本过老问题)我们必须用debug跟踪,可是64位系统在win+R里debug不是指令,不能跟踪,这时我们强大的DOSBox 0.74发挥作用了

 

打开DOSBox,按以上步骤完成设置后输入debug test.exe

 

用r命令查看寄存器的值,u命令查看汇编程序的指令

 

我们用t命令进行执行

 

 

执行两次t命令后可以看到下一个汇编语言是MOV [0026],AX 即修改内存单元0026的单元的值,该单元因为存放着重要的机器指令,修改后将会导致DOSBox软件死机,继续执行t命令

 

此时DOSBox已经死机,想再次运行请关掉该软件再次打开即可,可见DOSBox模拟得挺真实的,连死机也不放过

 

以上就是基本的使用方法!

用汇编语言写一个大程序相比于高级语言是相当麻烦的,我们学汇编的目的并不是为了写出大程序,而是为了更好的理解计算机的底层工作,接触最接近机器语言的编程语言,探索它的原理,发现它的奥秘,有兴趣的同学或正在学汇编语言的同学可以试下这款模拟器,它模拟得恨到位,能有效地帮助汇编学习

  • 40
    点赞
  • 102
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值