NASM命令行编译的DOS程序(具体操作步骤)

例程来自于

NASM写的DOS程序:Hello World!_xtdumpling的博客-CSDN博客_dos nasm

;NASM "Hello World!", run in CMD or DOS.

;编译链接命令:

;      nasm hello.asm -o hello.com
section .text
global main
  org 100h
main:
  mov  ax, cs
  mov  ds, ax
  mov  ah, 9          ;9号调用
  mov  dx, msge    ;字符串的首地址送入dx
  int     21h            ;输出字符串
  mov  ah, 4ch       ;4ch号调用
  int     21h            ;结束
msge:
  db 'Hello World!',0dh,0ah,'$'

步骤一:

将上述程序,拷入Visual Studio,保存成hello.asm,记住程序保存的位置,这里,我们只用到Visual Studio的编辑功能,接下来的编译,我们将采用命令行的方式进行(主要如何在Visual Studio环境下编译还不熟悉)。

步骤二:

WIN+R键,敲入CMD,启动windows的命令行控制台,利用dir查看刚刚生成的汇编程序hello.asm

 步骤三:

命令行编译生成DOS下可以执行的com格式文件

编译链接命令:

;      nasm hello.asm -o hello.com

再次参看 如图已经生成了hello.com文件

步骤四:

 运行测试。

首先我们在windows 命令行模式下运行试试。

 结果是不能运行,DOS是久远的16位操作系统,现在windows都是64位的了,不再支持运行了。

那就没有办法测试了嘛?其实办法还是有的,比如emu8086,就可以。

启动emu8086,调入hello.com,如图所示

并且我们可以看到dos下com文件的特点,总是装载到段内偏移地址100H处,这也是我们写程序总是用ORG 100H的原因所在。

接下啦,运行看看

 

看来不错。

这就是个好玩的小玩仍,Just for Fun!!! 


 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iCxhust

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值