用C为8086写程序(我实际运行了一下, 靠谱! 确实可以用C语言给8086喂指令)

2024-02-06 11:48

本文主要是介绍用C为8086写程序(我实际运行了一下, 靠谱! 确实可以用C语言给8086喂指令),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

         转载地址:http://blog.csdn.net/phodal/article/details/7425925


在Google了几天之后,终于得到自己想要的答案,也就是用C给8086写程序,一开始的目标是比较简单的就是用Proteus仿真86,然后写程序。

Proteus提供了8086的示例程序,因为是装在D盘上,所以位置大概如下。

[plain]  view plain copy
print ?
  1. D:\Program Files\Labcenter Electronics\Proteus 7 Professional\SAMPLES\VSM for 8086\8086 Demo Board  

文件如下:

[plain]  view plain copy
print ?
  1. 7seg.h  
  2. DemoBoard.PWI  
  3. DemoBoard.dsn  
  4. RTL.obj  
  5. board.c  
  6. board.h  
  7. board.obj  
  8. calc.c  
  9. calc.exe  
  10. calc.h  
  11. calc.obj  
  12. cleanup.bat  
  13. compile.bat  
  14. math.lib  
  15. rtl.asm  

核心文件就是DSN了,也程序相关的就是compile.bat(修改完后)。

[plain]  view plain copy
print ?
  1. @echo on  
  2. del *.obj  
  3. del *.exe  
  4. del *.map  
  5. ml /Zm /Zd /Zi /Zf -c RTL.ASM  
  6. dmc -0 -g -ms -0 -c -Ic:\compile\dm\INCLUDE  -oboard.obj board.c  
  7. dmc -0 -g -ms -0 -c -Ic:\compile\dm\INCLUDE  -ocalc.obj calc.c  
  8. c:\compile\dm\bin\link.exe /CO /NOD /DEB /DEBUGB  /STACK:1024 calc.obj+board.obj+rtl.obj+math.lib  

ml的命令是来自于masm32: www. masm32 .com

dmc命令是来自于Digital Mars C,C++:http://www.digitalmars.com/


安装这两个程序,然后增加到PATH(路径)上。

对于有多个link.exe可能会报错的,所以添加linkx.exe的绝对路径。

[plain]  view plain copy
print ?
  1. c:\compile\dm\bin\link.exe   

然后编译:


生成了cacl.exe,达到目标了~。


这篇关于用C为8086写程序(我实际运行了一下, 靠谱! 确实可以用C语言给8086喂指令)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/684212

相关文章

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

Python包管理工具核心指令uvx举例详细解析

《Python包管理工具核心指令uvx举例详细解析》:本文主要介绍Python包管理工具核心指令uvx的相关资料,uvx是uv工具链中用于临时运行Python命令行工具的高效执行器,依托Rust实... 目录一、uvx 的定位与核心功能二、uvx 的典型应用场景三、uvx 与传统工具对比四、uvx 的技术实