我们用C,C++,Java,C#等这样一些高级语言时一般会用到一个集成开发环境,啥编译链接之类的操作都集成到一起了,IDE给你自动完成了.随便点几下按钮就编译好运行起来了.

那假如是写了几行汇编代码该怎么运行它啊?刚学一门语言比较经典的方法是先整个hello world出来,熟悉下最基本的操作.怎么用汇编整个hello world出来呢.下面是最简单的访求,没有用到一些其他开发工具.

1.在文本文件里写些汇编代码,源代码在下面.然后把文件名改为arwen.asm也就是后缀为asm的文件,假如asm文件所在的目录为D:\MyPro

2.下载MASM.EXE和LINK.EXE两个可执行文件.网上一搜可以找到.比如在这里下 http://ishare.iask.sina.com.cn/download/explain.php?fileid=22605144

假如把MASM.EXE和LINK.EXE放到如下目录C:\MyASM.然后接来就是怎么编译是链接了

3.编译:打开cmd ,cd D:\MyPor 切换到源文件所在目录.然后再敲入如下命令 C:\MyASM\MASM  arwen.asm

接来会有几个要你输入啥内容的地方,不用管全部点回车跳过.此时在MyPro目录下会看到一个arwen.obj文件

4.链接: 敲入如下命令 C:\ MyASM\LINK arwen.obj   接下来再继承敲回车.此时就会产生一个arwen.exe文件.

5.运行.敲入arwen.exe运行,会看到有hello world了

反正不管你源文件和masm.exe. link.exe放哪目录都没关系.调用的时候都指定完整路径都找着就行.

hello world的源代码如下

data1 segment
       msg db "Hello,world.",0dh,0ah,"$"
 data1 ends
 code1 segment
       assume cs:code1,ds:data1
 start:
       mov ax,data1
       mov ds,ax
       lea dx,msg
       mov ah,9
       int 21h
       mov ax,4c00h
       int 21h
 code1 ends
       end start

汇编程序hello world的更多相关文章

  1. x86汇编程序基础(AT&T语法)

    一.简单的汇编程序 以下面这段简单的汇编代码为例 .section .data .section .text .globl _start _start: movl $, %eax movl $, %e ...

  2. ARM汇编程序结构

    ARM汇编程序结构 一个ARM程序可以被划分为多个代码段和数据段,在汇编的时候这些段会被形成一个可执行文件 .text ;正文段,包含程序的指令代码 .data ;数据段,包含固定的数据,如常量,字符 ...

  3. VS2012下X64平台嵌入汇编程序

    VS2012在win32平台编译的时候可以很好的支持汇编语言的嵌入.建立一个控制台应用程序,选择空项目.项目建立好之后添加一个.cpp文件.在cpp文件中写入如下代码: #include <io ...

  4. 汇编程序的Hello world

    原文链接:http://www.orlion.ga/989/ 一.汇编程序的Hello world x86 AT&T: .data   msg:       .ascii "Hell ...

  5. ARM汇编程序基本知识

    ARM汇编程序基本知识 1.汇编程序的基本组成 ARM汇编语言程序中,程序是以程序段为单位组织代码的.段是相对独立的指令或者代码序列,拥有特定的名称.段的种类有代码段.数据段和通用段,代 码段的内容为 ...

  6. 使用Visual Studio 2013 调试 MASM 汇编程序!

    原文地址:http://kipirvine.com/asm/debug/vstudio2013/index.htm Using the Microsoft Visual Studio 2013 Deb ...

  7. TC2.0中怎样调用汇编程序

    转载于: TC2.0中怎样调用汇编程序 一.概述 TC是美国BORLAND 公司在IBM PC机上开发的一个高效.优化的C编译程序,它自带高效的全屏幕编辑程序,在集成开发环境下可支持编辑.编译.连接调 ...

  8. 如何用Visual Studio 2008 写汇编程序?

    如何用Visual Studio 2008写汇编程序? 最近在上夏季小学期,在学汇编语言,关于用什么编辑环境一直很纠结.很想找到一个比较好的IDE,但是试了几个像RadASM之类的,发现还不是很满意. ...

  9. 架设WIN32汇编程序的开发环境

    笔者在学习Windows下的图形界面应用程序(GUI,Graphical User Interface)的时候碰到的第一个麻烦就是架设WIN32汇编程序的开发环境,在这里笔者愿意和大家分享这段经历. ...

  10. DOS下读取spd信息的汇编程序(通过SMBus)

    汇编程序编写的读取spd信息的代码: ;----------------------------------------------------------- ;功能: 通过SMbus 读取内存的SP ...

随机推荐

  1. leetcode算法刷题(三)

    今天在刷了几道简单的动态规划后,又看了看string方面的题 第五题 Longest Palindromic Substring 题目的意思:求一个字符串的最长回文子串 分析:开始,我的想法是,现在字 ...

  2. C语言基础03

    1.随机数 :一个范围内随机数字的返回值. 格式为: arc4random() % ( num大值 -num小值 + 1 ) + num小值. int n,i= 0;           //控制随机 ...

  3. C语言 —— 括号配对问题(不使用栈)

    最近在南阳理工的OJ上刷题,看到一个有点意思的题目 网上的答案大多都使用了栈,可惜我还没有学习数据结构,所以只能用简单的方法来解决 题目的链接在这 http://acm.nyist.net/Judge ...

  4. VS 对于LINK fatal Error 问题 解决方案

    方案1:    点击“项目”-->“属性” --> “清单工具”,    然后选择"输入和输出’ --> ‘嵌入清单’,将后面的‘是’改成‘否’就可以了 方案2: 在VS安 ...

  5. HttpContext.Current.Cache 过期时间

    原文:HttpContext.Current.Cache 过期时间 为了更快的读取数据,我们一般会把常用到的数据加载到Cache中 在.NET中,Cache的存在可以依赖多中方式,主要用到HttpCo ...

  6. hdu 2769 uva 12169 Disgruntled Judge 拓展欧几里德

    //数据是有多水 连 10^10的枚举都能过 关于拓展欧几里德:大概就是x1=y2,y1=x2-[a/b]y2,按这个规律递归到gcd(a,0)的形式,此时公因数为a,方程也变为a*x+0*y=gcd ...

  7. wx.BookCtrlBase

    wx.BookCtrlBase A book control is a convenient way of displaying multiple pages of information, disp ...

  8. OC中ARC forbids explicit message send of release错误(转)

    ARC forbids explicit message send of'release' 很显然,是ARC的问题. 错误原因:在创建工程的时候点选了“Use Automatic Reference ...

  9. ubuntu 下 apache+tomcat整合_(mod-jk方法)[转]

    整合的平台是Centos5环境如下: apache源代码包: httpd-2.2.11.tar.gz  下载地址http://labs.xiaonei.com/apache-mirror/httpd/ ...

  10. ios 中的构造方法

    构造方法 1.什么是构造方法? 初始化对象的方法. 默认情况下,在 OC 当中创建1个对象分为两部分(new 做的事): +alloc:分配内存空间 -init :初始化对象 2.构造方法的作用是? ...