linux下搭建汇编环境

时间:2022-07-04 11:58:19

在windows学习都是用的MASM,那如果在linux下也用MASM呢,怎么办?方法如下:

一.安装

可以通过一些软件,来模拟DOS,可以用Dosbox。如果用的ubuntu,在软件中心就可以找到。

直接安装后就可以在启动栏看到图标 ,     或是通过命令:sudo apt-get install dosbox  

二.环境搭建

1.在 linux下新建一个 masm 文件夹,然后把 windows下的masm的 LINK.EXE  、MASM.EXE 拷贝到masm中;
  由于DosBox中是没有 Debug 程序,需要先下载一个Win7  32位的debug程序下载地址:http://u.115.com/file/b3mmegwu ,
  然后把 debug.exe 也放置到masm文件夹中,即可。

2.在终端中直接输入dosbox 回车即可,将会跳出 DosBox 的图形界面,如:


linux下搭建汇编环境


3.然后模拟指定C盘的位置
   在dosbox中输入  mount   c  /home/wang/masm      (注意:/home/wang/masm    是我的系统masm所在路径)

  之后输入: c:   回车

  这样就进入你指定的目录了。

  现在环境已经搭建完成。


三.指令编写(两个独立事例)

事例1.Debug计算2的4次方

输入debug回车,进入debug状态,输入 a  (a是逐行汇编)
然后输入指令 ,再输入 t(跟踪执行)察看结果,如图:


linux下搭建汇编环境

事例2.编写 helloworld 

一.汇编的源程序文件是以.asm为后缀的文件。编写程序使用任意编辑器即可,建议用vim,保存为 hello.asm ,代码是:

[plain]  view plain copy
  1. DATA SEGMENT  
  2.     BUF DB 'HELLO WORLD!  THIS IS MY FIRST ASM FILE! $'  
  3. DATA ENDS  
  4.   
  5. CODE SEGMENT  
  6.     ASSUME  CS:CODE,DS:DATA  
  7. START:  MOV AX,DATA  
  8.     MOV DS,AX  
  9.     LEA DX,BUF  
  10.     MOV AH,09  
  11.     INT 21H  
  12.     MOV AH,4CH  
  13.     INT 21H  
  14. CODE ENDS  
  15. END START  

二.在DosBox界面下输入 masm hello.asm,然后按几次回车就可以了

linux下搭建汇编环境

然后是链接,在DosBox下执行: link  hello   (注意:没有后缀)

linux下搭建汇编环境


最后运行即可:

linux下搭建汇编环境