汇编程序hello world
我们用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的更多相关文章
- x86汇编程序基础(AT&T语法)
一.简单的汇编程序 以下面这段简单的汇编代码为例 .section .data .section .text .globl _start _start: movl $, %eax movl $, %e ...
- ARM汇编程序结构
ARM汇编程序结构 一个ARM程序可以被划分为多个代码段和数据段,在汇编的时候这些段会被形成一个可执行文件 .text ;正文段,包含程序的指令代码 .data ;数据段,包含固定的数据,如常量,字符 ...
- VS2012下X64平台嵌入汇编程序
VS2012在win32平台编译的时候可以很好的支持汇编语言的嵌入.建立一个控制台应用程序,选择空项目.项目建立好之后添加一个.cpp文件.在cpp文件中写入如下代码: #include <io ...
- 汇编程序的Hello world
原文链接:http://www.orlion.ga/989/ 一.汇编程序的Hello world x86 AT&T: .data msg: .ascii "Hell ...
- ARM汇编程序基本知识
ARM汇编程序基本知识 1.汇编程序的基本组成 ARM汇编语言程序中,程序是以程序段为单位组织代码的.段是相对独立的指令或者代码序列,拥有特定的名称.段的种类有代码段.数据段和通用段,代 码段的内容为 ...
- 使用Visual Studio 2013 调试 MASM 汇编程序!
原文地址:http://kipirvine.com/asm/debug/vstudio2013/index.htm Using the Microsoft Visual Studio 2013 Deb ...
- TC2.0中怎样调用汇编程序
转载于: TC2.0中怎样调用汇编程序 一.概述 TC是美国BORLAND 公司在IBM PC机上开发的一个高效.优化的C编译程序,它自带高效的全屏幕编辑程序,在集成开发环境下可支持编辑.编译.连接调 ...
- 如何用Visual Studio 2008 写汇编程序?
如何用Visual Studio 2008写汇编程序? 最近在上夏季小学期,在学汇编语言,关于用什么编辑环境一直很纠结.很想找到一个比较好的IDE,但是试了几个像RadASM之类的,发现还不是很满意. ...
- 架设WIN32汇编程序的开发环境
笔者在学习Windows下的图形界面应用程序(GUI,Graphical User Interface)的时候碰到的第一个麻烦就是架设WIN32汇编程序的开发环境,在这里笔者愿意和大家分享这段经历. ...
- DOS下读取spd信息的汇编程序(通过SMBus)
汇编程序编写的读取spd信息的代码: ;----------------------------------------------------------- ;功能: 通过SMbus 读取内存的SP ...
随机推荐
- ajax动态加入的元素不被jquerymobile渲染问题
一:对于listview: $(‘ul’).listview(‘refresh’); 二:对于div或其他: $(‘allAddContent’).trigger( “create” );
- 为啥都不用Qt Quick Controls 2呢
为啥都不用Qt Quick Controls 2呢 https://github.com/qt/qtquickcontrols2/
- FastJSON应用前测试
FastJSON 应用前测试 FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快!但是文档做得不好,在应用前不得不亲测一些功能.\ 实际 ...
- 初探ListView和Adapter
关于Android Adapter(适配器),参考Devin Zhang’s blog.简单的说,Adapter起到的作用是使得前端的显示和后端的数据能够适配,用以下代码作为例子 1234567891 ...
- Matrix(类似kruskal)
Matrix Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submis ...
- android开发之Animations的使用(二)
android开发之Animations的使用(二) 本博文主要讲述的是android开发中的animation动画效果的使用,和上一篇博文不同的是,此次四种动画效果,主要使用的是xml文件实现的,提 ...
- UIViewController、UINavigationController与UITabBarController的整合使用
UINavigationController与UITabBarController是iOS开发中最常用的两种视图控制器,它们都属于UIViewController的子类,继承关系如下: @interf ...
- JavaScript 工作必知(九)function 说起 闭包问题
大纲 Function Caller 返回函数调用者 Callee 调用自身 作用域 闭包 function 函数格式 function getPrototyNames(o,/*optional*/ ...
- wcf 速成,转的啊 第一天
作为WCF速成系列,只介绍些项目开发中常用到的实战知识. 学习wcf,还是对其中的几个术语要了解一下.wcf中有一个ABC的概念,就是 第一: "A" 是地址,就是告诉别人我wcf ...
- SharePoint 计时器服务无法启动
摘要: Microsoft SharePoint Server 2010 使用 Windows SharePoint Services 定时 V4 (SPTimerV4) 服务运行大多数系统任务.服务 ...