当前位置: 首页 > news >正文

42、C++与汇编语言的链接及优化实战

C++与汇编语言的链接及优化实战

1. C++与汇编程序链接基础

在将单独汇编的ASM模块集成到C++项目时,需要把汇编器生成的目标文件添加到C++项目中。接着从菜单调用MAKE或BUILD命令,该命令会编译CPP文件,若没有错误,就会链接两个目标模块以生成可执行程序。这里建议将CPP源文件的名称限制为八个字符,否则在调试程序时,DOS版的Turbo Debugger可能无法找到该文件。

在调试方面,Borland C++编译器不允许在IDE中运行DOS调试器,所以需要从DOS提示符或Windows桌面运行Turbo Debugger for DOS。使用调试器的File/Open菜单命令,选择C++链接器生成的可执行文件,C++源代码文件会立即显示,此时就可以开始跟踪和运行程序。

汇编程序被Borland C++调用时,必须保存BP、DS、SS、S1、Dr和方向标志的值。16位的Borland C++程序对所有数据类型使用特定的存储大小,不同的C++编译器这些大小可能不同,具体可参考下表:

C++ TypeStorage BytesASM Type
char, unsigned char1byte
int, unsigned int, short int2word
http://www.rkmt.cn/news/113633.html

相关文章:

  • 43、深入探索C++与汇编语言交互及MS-DOS编程
  • 别让年龄设限!30 岁成功转型网络安全,解锁人生全新赛道
  • 简单理解:keil5终端显示这些内存是什么意思Program Size: Code=189906 RO-data=31078 RW-data=636 ZI-data=58604
  • EmotiVoice能否识别文本情感并自动匹配语音?
  • 47、磁盘存储与文件系统全解析
  • EmotiVoice语音合成能否实现群体欢呼语音生成?合成策略
  • AI教父最新警告:让整个硅谷都沉默的暴论:我们高估了算力,却严重低估了情绪的价值。
  • Compressor.js 终极指南:5分钟掌握前端图像压缩技巧
  • GitHack安全测试终极指南:从Git泄露检测到源代码恢复的深度解析
  • OpenProject版本选择终极指南:从开源到企业级的完整决策分析
  • ChatGPT,死路一条
  • 一键保存任何内容,狂揽 2.6 万 GitHub Star!
  • 如何快速掌握vokoscreenNG:2024年最完整的屏幕录制终极指南
  • 你怎么看待满嘴高并发,编码能力却稀松平常的程序员?
  • LobeChat公众号昵称创意生成
  • 探究nn.Linear和nn.Conv2d的基本用法
  • EmotiVoice能否实现语音情感渐变过渡?动态控制探索
  • 2025年江苏新沂PC砖公司口碑榜单 - 2025年品牌推荐榜
  • 【开题答辩全过程】以 基于JSP的校园停车收费系统设计及实现为例,包含答辩的问题和答案
  • Speechless终极指南:一键永久保存微博内容的完整解决方案
  • Open-Meteo终极指南:5步搭建个人天气数据服务
  • 银行回单识别技术:企业财务智能化的重要基石
  • d2s-editor终极指南:暗黑破坏神2存档修改完全手册
  • GitHack终极指南:快速检测Git泄露与完整源代码恢复
  • LobeChat用量统计面板:跟踪Token消耗与GPU使用率
  • Vosk Android中文语音识别终极部署指南:5个关键避坑点深度解析
  • 基于VUE的企业咨询管理系统 [VUE]-计算机毕业设计源码+LW文档
  • 图像处理函数与形态学操作笔记(含 Halcon 示例)
  • 如何快速实现大屏自适应:前端开发的终极解决方案
  • LSM 原理、实现及与 B+ 树的核心区别