查看源代码
出自Linux Wiki
对
使用MASM编写汇编程序
的源代码
根据以下的原因,您无权限进行编辑这个页面操作:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
目前多数学校的微机原理课程使用的是MASM汇编器,而Linux中的汇编工具是[[nasm]]。二者之间的语法有不少差别,不能通用。 安装[[dosbox]]或[[dosemu]]之后都可以在Linux中使用MASM和Debug,而且由于是在Dosbox及dosemu的虚拟机中运行,安全性也较高。 ==安装== 你可以选择安装dosbox或dosemu,也可以选择二者都安装。 [[Image:Dosbox asm.png|thumb|250px|在Dosbox中运行Debug]] [[Image:Dosemu debug.png|thumb|250px|使用dosemu运行debug ]] [[Image:Dosemu dumb.png|thumb|250px|使用dosemu -dumb运行debug ]] Dosbox的网站为 http://www.dosbox.com/ ,多数发行版的软件仓库中都配有这一软件,比如[[Debian]]/[[Ubuntu]]中的安装方法为: $ sudo apt-get install dosbox Dosemu的网站为 http://dosemu.sourceforge.net/ ,同样存在于多数发行版的软件仓库中,Debian或Ubuntu中的安装方法为: $ sudo apt-get install dosemu ==准备汇编工具== ===debug=== {{Hint|dosemu已经包括了debug,如果你使用dosemu,就无需单独准备debug了。}} 如果你安装有Windows XP,那可以在Windows XP的system32文件夹找到''debug.exe'',如果没有WinXP,就需要上网下载,如[http://www.programsalon.com/downloads40/sourcecode/asm/detail139573.html 这个网页]<ref>http://hi.baidu.com/jack%5Fhunt/blog/item/77aea650ff90016085352488.html</ref>。 ===masm=== 你需要找一个DOS中的masm软件,在DOS中工作的最好是5.0版本,上面的链接中就有。 ==配置DOS虚拟机== 分别介绍Dosbox和dosemu的配置方法: ===dosbox=== 把上面的工具放到一个文件夹中,如''~/learnASM/tools/'',在''~/learnASM''中创建一个Shell脚本: $ cd ~/learnASM $ echo "dosbox -c 'mount c: ./' -c 'path %path%;c:\tools'" > runDosbox.sh $ chmod +x runDosbox.sh 现在就可以用'./runDosbox.sh'启动dosbox了: $ ./runDosbox.sh ===dosemu=== dosemu的配置方法很简单<ref>http://dosemu.sourceforge.net/docs/HOWTO/</ref>,由于默认dosemu中的D盘就是用户的根目录,只要把masm放在好找的地方就可以了。也可以修改''~/.dosemu/drive_c/autoexec.bat''(需要root权限)把masm的路径加到PATH里。 {{Hint|如果只是进行汇编操作,还可以运行'''dosemu -dumb''',dosemu会在当前shell中运行。}} 如果要全屏运行dosemu,推荐在''/etc/dosemu/dosemu.conf''中加入''' $_X_font="vga8x19" ''',以使全屏时的字体正常。 {{Hint|退出dosemu的命令是'''exitemu'''}} ==使用注意事项== 可以使用VI等编辑器在系统中编辑源码,然后在Dosbox界面用'''Ctrl-F4'''刷新目录。 为了在[[vim]]中正常高亮显示汇编源码,可以创建''/etc/vim/filetype.vim'',并加入如下内容: augroup filetypedetect au BufNewFile,BufRead *.asm setf masm augroup END 这样后缀为''.asm''的文件就可以正常高亮了。 ==参考== <references /> [[Category: 汇编编程]]
在这个页面上使用的模板有:
Template:Hint
(
查看源码
)
返回到
使用MASM编写汇编程序
。
导航
首页
社区入口
当前事件
最近更改
随机页面
帮助
查看
页面
讨论
查看源代码
历史
个人工具
登录/创建账户
搜索
简体繁体转换
不转换
简体
繁體
工具箱
链入页面
链出更改
特殊页面