[原]Sublime Text3 搭建16位汇编环境(windows)
最近在学习王爽的《汇编程序》,参考《简单OS开发前奏<一>EDITPLUS+MASM32搭建汇编开发环境(16位+32位)》http://www.cnblogs.com/tishion/archive/2010/09/09/1822438.html 的博文,而我用的是Sublime Text3。

ST3不用我介绍了吧,安装、汉化、PJ、安装Packing Control请自行Google下。
1、安装Masm32程序到F盘,Masm32包含有丰富的库和编译程序。
2、写批处理放到F:\masm32\bin\asm.bat,作用是编译和链接:
@echo off
REM 设置环境变量
@set include=F:\masm32\Include @set lib=F:\masm32\lib @set path=F:\masm32\bin;%path% echo Environment Variables Initalization Done! ml /c %1.asm
link16 %1.obj
3、ST3,搜索安装MasmAssembly插件,安装后在ST3选用配色方案:“Preferences-配色方案-MasmAssembly-Theme-Classic”
4、ST3,配置Build System:
工具--编译系统--编译新系统
{
"cmd": ["F:\\masm32\\bin\\asm.bat", "$file_base_name"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.asm",
"encoding":"cp936",
"variants":
[
{
"name": "Run",
"cmd": ["start","CMD", "/U", "/C","debug $file_base_name.exe"],
"shell":true
}
]
}
保存文件为Asm.sublime-build到Sublime Text 3\Packages\User目录下,一般保存时定位的就是这个文件夹。
以上配置文件对应于“工具”下面的两个菜单:“编译 Ctrl+B“(注:实际是编译并链接) 和 “运行 Ctrl+Shift+B”(注:Debug)
5、测试汇编代码:
assume cs:codesg,ds:datasg datasg segment
dw 00BEh,0006h,0000h
datasg ends
codesg segment
start:mov ax,datasg
mov ds,ax
mov bx,
mov si,
mov ax,[bx+si]
inc si
mov cx,[bx+si]
inc si
mov di,si
add cx,[bx+di]
mov ax,4c00h
int 21h
codesg ends
end start
Ctrl+B编译效果:
Environment Variables Initalization Done!
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved. Assembling: p150.asm Microsoft (R) Segmented Executable Linker Version 5.60.339 Dec 5 1994
Copyright (C) Microsoft Corp 1984-1993. All rights reserved. LINK : warning L4021: no stack segment
[Finished in 0.1s]
Ctrl+Shift+B运行Debug效果:
-u命令反汇编一下:

在32位配置汇编环境,大家可以参考此文试试。
欢迎大家拍砖,转载请注明出处,谢谢。
[原]Sublime Text3 搭建16位汇编环境(windows)的更多相关文章
- Sublime Text3搭建PHP开发环境
Sublime Text3搭建PHP开发环境 本文主要给大家分享了关于Sublime Text3搭建PHP开发环境 ,感兴趣的小伙伴可以做一下参考 一.Sublime text3安装 到官网http: ...
- 16位汇编 多文件 intel汇编 编译器masm5.0 调用子程序库即静态库的自定义函数 WINDOWS
;以下是16位汇编 创建静态库,并调用静态库中的函数 ;多文件汇编格式 ;编译方法(此处用的是masm 5.0,如果是其他的编译器,有可能不能编译) ;第一种,编译方法 ;1.masm main.as ...
- ubuntu之使用sublime text3搭建Python IDE
参考文章: 教你如何将 Sublime 3 打造成 Python/Django IDE开发利器 Ubuntu16.04下使用sublime text3搭建Python IDE 如何优雅地使用Subli ...
- 对VS2019进行32位汇编环境配置
1.库文件(很重要) 用我这一份就行:https://www.lanzous.com/i6364hg 2.VS依赖库 打开VS2019,选择桌面向导 配置项目时,选择新项目. 选择生成依赖项 选中ma ...
- Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳
Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...
- SublimeText3搭建go语言开发环境(windows)
SublimeText3搭建go语言开发环境(windows) 下载并解压: Sublime Text Build 3021.zip注册: 尽量不要去破解 安装Package C ...
- 在windows环境下基于sublime text3的node.js开发环境搭建
首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...
- 使用sublime text3搭建Python编辑环境
最近在工作遇到一个难题. 我所在的测试组有一套PC软件前端自动化工程,在进行自动化测试时,需要在一台古老的xp机器上运行,但这台古老的xp机器带给我诸多烦恼,特别是使用Pycharm编辑器时,我遇到了 ...
- Windows Sublime text3 搭建Go语言环境
第一步:Go环境和配置 1.安装 Go 开发环境(省略),假设Go安装目录为 C:\Go 2.配置环境变量,下面两个环境变脸没有就加上. 资料参考:http://studygolang.com/art ...
随机推荐
- 通过select选项动态异步加载内容
通过监听select的change事件来异步加载数据. 1:效果图: 选择Good: 选择 Bad: 2:index.html <!DOCTYPE html> <html lang= ...
- ISO7816通讯协议在工控主板EM9160中的实现方案
在新的国家电网智能终端相关标准中,规定了通过专门的加密芯片来保证设备数据安全性的方法,而设备主控单元与加密芯片采用了广泛应用的ISO7816通讯协议.工控主板EM9160为了适应这一新的技术需求,对其 ...
- windows进程间通讯的方法
版权声明 请尊重原创作品.转载请保持文章完整性,并以超链接形式注明原始作者“tingsking18”和主站点地址,方便其他朋友提问和指正. 1.使用共享内存 代码如下: void FileMapp ...
- pmp论坛
PMP论坛: http://www.px101.com/specialpmp/ http://www.pmp.cn/ http://www.pmptuan.com/ http://www.mypm.n ...
- docker_openwrt
http://wiki.openwrt.org/doc/howto/docker_openwrt_image https://www.baidu.com/s?wd=lxc%20docker&r ...
- hdu4641-K-string(后缀自动机)
Problem Description Given a string S. K-string is the sub-string of S and it appear in the S at leas ...
- Django架设blog步骤
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- JAVA获取oracle中sequences的最后一个值
项目中,用到一个序列作单号,框架用的是ssh,在dao层去拿的时候,运行时报错为dual is not mapped,[select *.nextval nextvalue from dual] 后来 ...
- iOS 语音识别使用讯飞报错
You must rebuild it with bitcode enabled(Xcode setting ENABLE_BITCODE), obtain an updated library fr ...
- html checkbox全选或者全不选
/* 全选或全不选 */ function CheckedAllOrNo() { var arr = $(':checkbox'); for (var i = 1; i < arr.length ...