最近在学习王爽的《汇编程序》,参考《简单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)的更多相关文章

  1. Sublime Text3搭建PHP开发环境

    Sublime Text3搭建PHP开发环境 本文主要给大家分享了关于Sublime Text3搭建PHP开发环境 ,感兴趣的小伙伴可以做一下参考 一.Sublime text3安装 到官网http: ...

  2. 16位汇编 多文件 intel汇编 编译器masm5.0 调用子程序库即静态库的自定义函数 WINDOWS

    ;以下是16位汇编 创建静态库,并调用静态库中的函数 ;多文件汇编格式 ;编译方法(此处用的是masm 5.0,如果是其他的编译器,有可能不能编译) ;第一种,编译方法 ;1.masm main.as ...

  3. ubuntu之使用sublime text3搭建Python IDE

    参考文章: 教你如何将 Sublime 3 打造成 Python/Django IDE开发利器 Ubuntu16.04下使用sublime text3搭建Python IDE 如何优雅地使用Subli ...

  4. 对VS2019进行32位汇编环境配置

    1.库文件(很重要) 用我这一份就行:https://www.lanzous.com/i6364hg 2.VS依赖库 打开VS2019,选择桌面向导 配置项目时,选择新项目. 选择生成依赖项 选中ma ...

  5. Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳

    Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...

  6. SublimeText3搭建go语言开发环境(windows)

    SublimeText3搭建go语言开发环境(windows) 下载并解压:     Sublime Text Build 3021.zip注册:     尽量不要去破解    安装Package C ...

  7. 在windows环境下基于sublime text3的node.js开发环境搭建

    首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...

  8. 使用sublime text3搭建Python编辑环境

    最近在工作遇到一个难题. 我所在的测试组有一套PC软件前端自动化工程,在进行自动化测试时,需要在一台古老的xp机器上运行,但这台古老的xp机器带给我诸多烦恼,特别是使用Pycharm编辑器时,我遇到了 ...

  9. Windows Sublime text3 搭建Go语言环境

    第一步:Go环境和配置 1.安装 Go 开发环境(省略),假设Go安装目录为 C:\Go 2.配置环境变量,下面两个环境变脸没有就加上. 资料参考:http://studygolang.com/art ...

随机推荐

  1. Android中写入读取XML

    获取XML文件的基本思路是,通过getResources().getXml()获的XML原始文件,得到XmlResourceParser对象,通过该对象来判断是文档的开头还是结尾,是某个标签的开始还是 ...

  2. SharedPreferences数据、openFileOutput文件、SQLite数据库文件存储位置

    在模拟器中: SharedPreferences将XML文件保存在/data/data/<package name>/shared_prefs目录下, openFileOutput方法将文 ...

  3. ANDROID (eclipse)开发常见问题及解决办法汇总

    1.ANDROID 在eclipse中没有出现AVD的解决方法(转)如果android安装正确的话,但是eclipse里面的导航条就是没有AVD 可以通过「Window」⇒「Customize Per ...

  4. url中的jsessionid解释

    (1) 这是一个保险措施 因为Session默认是需要Cookie支持的 但有些客户浏览器是关闭Cookie的 这个时候就需要在URL中指定服务器上的session标识,也就是5F4771183629 ...

  5. Android自定义ListView的Item无法响应OnItemClick的解决办法

     转: 如果你的自定义ListViewItem中有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus,也 ...

  6. sizeof(long)

    16位系统:long是4字节,int是2字节32位系统:long是4字节,int是4字节64位系统:long是8字节,int是4字节

  7. Android初学:联系创建Activity

    public class Activity2 extends Activity{ @Override protected void onCreate(Bundle savedInstanceState ...

  8. 关于hibernate中对象的三种状态分析

    一,首先hibernate中对象的状态有三种:瞬态.游离态和持久态,三种状态转化的方法都是通过session来调用,瞬态到持久态的方法有save().saveOrUpdate().get().load ...

  9. poj 2456 Aggressive cows(二分搜索之最大化最小值)

    Description Farmer John has built a <= N <= ,) stalls. The stalls are located along a straight ...

  10. 使用AWS的EC2服务器,进行跳墙

    选Ubuntu的服务器 一开始先设置Root,命令:su root 在安装之前,先Update一下源:apt-get update update完就可以安装: 1.安装pi,命令:apt-get in ...