▶ DOSBOX 相关

● 下载 DOSBox(http://www.dosbox.com/download.php?main=1),安装到文件夹 DOSBox 。

● 下载 debug.exe(Win10 没有自带,随手找的),放到目录 DOSBox 下。

● 打开配置文件 C:\Users\cuan\AppData\Local\DOSBox\dosbox-0.74.conf,拉到末尾,添加 mount C D:\Program\DOSBox (启动时自动挂载 DOSBox 为 C 分区)

● 启动 DOSBox.exe,这时可以使用 debug 命令(即运行 debug.exe)进入调试模式。

▶ Visual Studio 2015 相关

● 原文地址:http://blog.csdn.net/sinat_27382047/article/details/70339455

● Visual Studio 汇编高亮插件 AsmHighlighter(http://asmhighlighter.codeplex.com/),双击安装。

● VS 工具栏中,工具,选项,环境,扩展和更新,自动检查更新。

  

● VS 工具栏中,工具,扩展和更新,启用 AsmHighlighter,可能需要在左边点击更新,重启 VS 以后才能生效。

  

● 建项目。建一个 “Win32 控制台应用程序” 项目,如下选择。

  

● 项目属性右键,生成依赖项,生成自定义,如下选择。

  

● 向项目中添加源文件,使用C++文件,但是后缀名改为 .asm,如下选择。

  

● 项目属性右键,属性,链接器,系统,子系统,选择 “控制台 (SUBSYSTEM:CONSOLE)”

  

● 项目右键,属性,链接器,高级,入口点,填 "main"

  

▶ 测试代码

 COMMENT !&
块段注释
!& . ; 32 位程序,使用 32 位寄存器和地址
.model flat, stdcall ; 内存模式 flat,子程序调用规范 stdcall
.stack ; 伪指令,使用堆栈大小,一个内存页为 4096 Byte ExitProcess PROTO, dwExitCode:DWORD ; 声明 Windows 函数原形,用于与操作系统交互 .code ; 伪指令,程序区段
main PROC ; 过程起点,程序入口
mov eax,
add eax,
INVOKE ExitProcess, ; 过程向操作系统返回 0,表正常结束
main ENDP ; 过程结束 END main ; 程序结束 后面的内容被自动忽略,不用写成注释

● 64位版本

                                     ; 不用平台,内存指定

 ExitProcess PROTO                   ; 不用参数

 .data
sum DWORD .code
main PROC
mov eax,
add eax,
mov sum, eax
mov ecx, 0 ; ecx 寄存器作为 ExitProcess 的返回值,设为 0
call ExitProcess ; 使用 call 来调用函数,不再写返回值
main ENDP ; 过程结束 END ; 不表明入口点

● 输出结果:没有显示输出,正常返回 0

▶ 相关链接

● 最老的说明:http://kipirvine.com/asm/gettingStartedVS2015/index.htm#tutorial32

● 看SB“坐而论道”:http://tieba.baidu.com/p/4827889049#99426928136l

● 微软64位汇编器 ml64.exe:https://msdn.microsoft.com/en-us/library/hb5z4sxd.aspx

● 包含了一些VS高级配置说明:的http://blog.csdn.net/natepan/article/details/6781439

● 一个包括 16 位工程的说明:http://kipirvine.com/asm/gettingstartedvs2010/#syntax

汇编环境配置及 Hello World。DOSBox,debug.exe,VisualStudio的更多相关文章

  1. windows汇编环境配置

    原文地址 软件下载 需要的软件已经打包,包括dosbox和MASM.如果没有这两个软件可以在下面的地址下载. http://hjwblog.com/game/汇编环境.zip 点击下载 安装dosbo ...

  2. 汇编环境的搭建(windows 10 + debug)

    1. debug.exe 安装 win10 版本过高,不再提供 debug.exe,甚至从别处获取的 debug.exe 的也无法运行. 汇编语言学习所需的各种执行文件(debug.exe.link. ...

  3. Win32汇编环境配置

    放假了,发现自己知识面窄,趁有时间就打算折腾下Win32汇编.其实在学校也上过汇编课,是基于dos的.那时老师不务正业,老跟我们讲政治经济文化,唯独不怎么讲课;再加上自己的问题,导致了dos汇编学得好 ...

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

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

  5. 视频+图文教程 | Java之安装JDK与环境配置

    演示所用软件JDK 8与Eclipse(Java开发工具)软件下载链接: 链接:https://pan.baidu.com/s/1Vg9ulrQH8WlGRAE89Y02UA提取码:swwl 视频介绍 ...

  6. 使用DOSBox在Win7_x64下搭建汇编环境

    1. 软件安装 1. debug.exe,masm.exe,link.exe,edit.com等汇编工具,一般32位的windows系统有自带,但64位系统下并没有,而且将32位系统下的工具拷贝到64 ...

  7. Mac OS环境下DOSBox汇编环境的搭建

    平台: mac 工具: DOSBox(点击下载DOSBox官网) debug.edit.link.masm等等(点击下载masm汇编开发工具,提取码: skc8) 步骤: 1 .安装DOSBox: 解 ...

  8. MS-DOS 系统汇编环境之DOSBOX+vim

    经过虚拟机的体验,我发现还是dosbox里汇编比较方便..... 一.下载安装 dosbox DOSBOX 准备好 masm.exe.link.exe.debug.exe,放在~/dos下(文件夹名字 ...

  9. win7 64位环境下配置汇编环境和程序设计

    下载dosbox,并解压安装 下载地址: http://pan.baidu.com/s/1eRJbJAq 默认安装到C:\Program Files (x86)\DOSBox-0.74 安装成功后,双 ...

随机推荐

  1. day31 python学习 并发编程之多进程理论部分

    一 什么是进程 进程:正在进行的一个过程或者说一个任务.而负责执行任务则是cpu. 举例(单核+多道,实现多个进程的并发执行): 二 进程与程序的区别 程序仅仅只是一堆代码而已,而进程指的是程序的运行 ...

  2. 获取js 文件传递的参数并使用json2进行json数据转换

    主要的技术就不用详细进行介绍了,就是使用js文件进行参数的传递,用途有一下几个: 1,进行js的版本控制. 2,获取参数并,进行一些额外功能的添加(比如使用js 进行用户验证,设计开发API (一些开 ...

  3. apache配置禁止访问某些文件/目录

    我们来看俩段通常对上传目录设置无权限的列子,配置如下: 代码如下: ? 1 2 3 4 5 6 <Directory "/var/www/upload"> <Fi ...

  4. c实现windows socket

    服务端代码: /* * testSocketService.c * * Created on: 2012-8-16 * Author: 皓月繁星 */ #include <WINSOCK2.H& ...

  5. 【转】每天一个linux命令(17):whereis 命令

    原文网址:http://www.cnblogs.com/peida/archive/2012/11/09/2761928.html whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数- ...

  6. Oracle 11gR2 RAC 常用维护操作 说明

    一.启动和停止集群 在Oracle 11gR2 下的RAC,架构发生了变化.CRS的信息也是放在ASM 实例里的,所以要关asm,必须关闭crs, 如果还使用了acfs的话,一关crs那么acfs里的 ...

  7. stylus 知识点

    循环的范围可以用两个小数点..表示,如(1..10)就是从1到10,并且包括1和10 for in 的循环范围写法: for index in 1 2 3 等价于: $li_length = 3 fo ...

  8. window.open 和 location.href 区别

    window.open():可以在一个网站上打开另外的一个网站的地址 window.location():只能在一个网站中打开本网站的网页

  9. bzoj1853幸运数字

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1853 容斥原理的应用. 发现十位的话只有2047个只含6或8的数,故可以存.它们的倍数个数只要 ...

  10. led的驱动及测试程序

    一.驱动源码 #include <linux/module.h> #include <linux/kernel.h> #include <linux/fs.h> # ...