https://www.tuicool.com/articles/v2A3mm——Win8下用DOSBox编写汇编语言

http://www.dosbox.com/

http://www.masm32.com/

http://tieba.baidu.com/p/4897231365_win10上可以运行的DosBox和BC3.1

https://blog.csdn.net/doniexun/article/details/45438457-Windows10下搭建汇编语言开发环境(利用DOSBOX和MASM32)

MASM32是国外的MASM爱好者Steve Hutchesson自行整理和编写的一个软件包,目前最高版本为11r版。MASM32并非指Microsoft的MASM宏汇编器,而是包含了不同版本工具组建的汇编开发工具包。它的汇编编译器是MASM6.0以上版本中的Ml.exe,资源编译器是Microsoft Visual Studio中的Rc.exe,32位链接器是Microsoft Visual Studio中的Link.exe,同时包含有其他的一些如Lib.exe和DumpPe.exe等工具。

dosbox是一个运行dos软件的神器

1安装dosbox-0.74,路径默认

2、把bc3.1精简版放到d盘目录下,即D:\BC3.1

2、修该配置文件C:\Users\Administrator\AppData\Local\DOSBox下的dosbox-0.74.conf最后一行的内容:

[autoexec]

# Lines in this section will be run at startup.

# You can put your MOUNT lines here.

mount c d:\BC3.1       //意为把d:\BC3.1目录作为虚拟C根目录,

set PATH=%PATH;c:\BIN;c:\x86tools         //设置bc3.1的环境变量,c:\BIN;c:\x86tools类似于在windows下添加环境变量,后面一个是x86汇编语言学习编译器。

c:

这样就可以启动DOSBox的时候自动mount了,不错。效果如下,可以学习ucos-ii了。(任哲版——嵌入式实时操作系统uc/os-II原理与应用(第二版)任哲

一个小实例,但是无法连接成功。

#include <stdio.h>
void main()
{
printf("hello world!\n");
}

https://blog.csdn.net/icodec/article/details/8004135文章说:

Turbo Link Version 5.1 Copyright (c) 1992 Borland International

Fatal: Bad object file record in ..\obj\os_cpu_a.obj near module file offset 0×00000000

** error 2 ** deleting ..\test\test.exe

出现这个错误,查了好多的文章都没有解决。也不是BC 5.02 IDE中的bug。后来想想,这个文件是asm汇编语言生成的,是不是编译器出了问题。于是使用新的TASM编译器进行编译,link的时候还是出现错误。最后才发现,是TLINK.EXE文件出了问题,BC31使用的是1992,V5.1,新的是7.1.30.1,1996年.  替换TLINK.exe,并且加上RTM.EXE后,示例代码也可以编译运行了。

后来我重新下载了bc31精简版后,可以运行了。说明之前下载的bc31精简包有问题。

运行后显示成功!!!!!

bcc -c -ml -Ic:\include -Lc:\lib test.c

tlink c:\lib\c0l.obj test.obj,test,test,c:\lib\cl.lib

dosbox下载并配置BC3.1及环境变量的方法的更多相关文章

  1. 配置JDK和Tomcat环境变量

    配置JDK和Tomcat环境变量 一.安装JDK和Tomcat 安装JDK:直接运行jdk-7-windows-i586.exe可执行程序,默认安装即可. 备注:路径可以其他盘符,不建议路径包含中文名 ...

  2. go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量

    go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量 下载安装:go get github.com/astaxie/beego 首页 - beego: 简约 & 强大并存 ...

  3. 零基础学习前端1-1配置node及npm环境变量

    零基础学习前端1-1配置node及npm环境变量 ## 1-1配置node及npm环境变量 首先:下载node 可以直接去官方网站下载 1.首先从官网下载安装包 https://nodejs.org/ ...

  4. 自动配置/切换/查看JDK环境变量

    最近老是需要几个版本的JDK切换工作,于是网上收集资料整理,自己写了一个:自动配置/切换/查看JDK环境变量的批处理脚本.顺带3个JDK版本分别是:jdk1.6.0_43,jdk1.7.0_80,jd ...

  5. Linux操作系统下三种配置环境变量的方法

    现在使用linux的朋友越来越多了,在linux下做开发首先就是需要配置环境变量,下面以配置java环境变量为例介绍三种配置环境变量的方法. 1.修改/etc/profile文件 如果你的计算机仅仅作 ...

  6. Linux操作系统下三种配置环境变量的方法——转载

    来源:赛迪网 作者:millio       现在使用linux的朋友越来越多了,在linux下做开发首先就是需要配置环境变量,下面以配置java环境变量为例介绍三种配置环境变量的方法. 1.修改/e ...

  7. hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)

    Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...

  8. [java]Windows 7 配置jdk 1.7环境变量

     来自百度文库 Windows 7 配置jdk 1.7环境变量 环境:win7(32位)64位和下面差不多      jdk1.7 1.右击计算机-属性-高级系统设置-高级-环境变量,弹出&quo ...

  9. 如何配置android的adb环境变量

    如果打开DOS窗口,输入adb显示既不是内部命令也不是外部命令,则说明没有配置adb环境变量.方法如下: 第一步: 打开环境变量配置窗口.右击计算机,属性-高级系统设置-环境变量. 第二部: 添加an ...

随机推荐

  1. Python中使用"subplot"在一张画布上显示多张图

    subplot(arg1, arg2, arg3) arg1: 在垂直方向同时画几张图 arg2: 在水平方向同时画几张图 arg3: 当前命令修改的是第几张图 t = np.arange(0,5,0 ...

  2. make编写教程(一)

    1. make规则 如果工程没有被编译过,则所有的c文件都要编译和链接 如果工程的某几个c文件被修改,那么只编译被修改的文件,并链接目标程序 如果工程的头文件被修改,需要编译引用了此头文件的c文件,并 ...

  3. ceph-状态监测-脚本

    http://www.tang-lei.com/2018/06/05/ceph-%E7%8A%B6%E6%80%81%E7%9B%91%E6%B5%8B-%E8%84%9A%E6%9C%AC/ 为了能 ...

  4. IDEA使用中的快捷键

    项目与项目之间的跳转: Ctrl+Alt+]             下一个窗口. Ctrl+Alt+[             跳转回上一个窗口. 文件之间的跳转: Ctrl+E.          ...

  5. SpringMVC的 ModelAndView

    使用ModelAndView类用来存储处理完后的结果数据,以及显示该数据的视图. public class ModelAndView { /** View instance or view name ...

  6. php strtolower()函数 语法

    php strtolower()函数 语法 作用:把所有字符转换为小写.大理石量具 语法:strtolower(string) 参数: 参数 描述 string 必须,规定要转换的字符串 说明:str ...

  7. python的列表 元组 字典

    列表和元组都是序列,是数据元素的集合,数据元素可以是数值.字符串,布尔值.对象等. 一.列表:用方括号定义[] 空列表 names = [] 带值的列表 names = ["bill&quo ...

  8. python 字符串str和json格式转换

    最近在写一个脚本,需要处理从excel中读取的数据,发现读取的json格式数据进行转换时报错 ValueError: Expecting property name enclosed in doubl ...

  9. 记录js中的兼容问题及解决办法

    1.获取非行内样式的兼容问题: 2.获取事件对象的兼容问题: 3.事件冒泡的兼容: 4.keyCode的兼容问题: 5.处理默认事件的兼容问题: 6.事件的绑定兼容问题:

  10. 数组中重复的数字(js实现)

    题目 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为7的 ...