社区
茶馆
帖子详情
C++Builder如何嵌入汇编语言?在线等待
blcr
2002-12-31 11:52:34
我用 C++Builder 做一个工控程序,其中要向一个端口发送数据,我嵌入了汇编程序
asm
{
mov dx, 026dH
mov al, led1 //这一句有错误。
xor al,0080H
out dx, al
}
其中026dH 为输出端口地址,led1为一个变量,该变量随时都有可能变化,存放我要向该端口送出的数。我如何处理? 很久没有用汇编了,忘记了,请帮帮忙!!!
...全文
70
12
打赏
收藏
C++Builder如何嵌入汇编语言?在线等待
我用 C++Builder 做一个工控程序,其中要向一个端口发送数据,我嵌入了汇编程序 asm { mov dx, 026dH mov al, led1 //这一句有错误。 xor al,0080H out dx, al } 其中026dH 为输出端口地址,led1为一个变量,该变量随时都有可能变化,存放我要向该端口送出的数。我如何处理? 很久没有用汇编了,忘记了,请帮帮忙!!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
IT-司马青衫
2003-01-11
打赏
举报
回复
2k
blcr
2002-12-31
打赏
举报
回复
老兄
0x260这是一个固定地址,变化的是要向它送的数据。
netsys2
2002-12-31
打赏
举报
回复
BYTE portNO = 0x260;
MyPort( &portNO);
blcr
2002-12-31
打赏
举报
回复
老兄:
能详细点么?
netsys2
2002-12-31
打赏
举报
回复
以指针方式存放即可,
MyPort(BYTE *portNO)
maxying
2002-12-31
打赏
举报
回复
关注~~~
bcbsoft
2002-12-31
打赏
举报
回复
这个贴子不应该放在 非技术区 !!
blcr
2002-12-31
打赏
举报
回复
我是否将led1以数组的方式存放?
netsys2
2002-12-31
打赏
举报
回复
我同事写的代码:
// 将16进制转换为字符串并加入空白间隔符,例如:输入0x12,0x34,0x56,输出"12 34 56 ")
// assic_str的长度应为:hex_len * 3 + 1
LPSTR _fastcall HexStrToCharStr2(BYTE *hex_array, LPSTR assic_str, int hex_len)
{
#pragma warn -8070 // 屏蔽无return警告
#pragma warn -8002 // 屏蔽嵌入汇编警告
__asm
{
MOV ESI,EAX // ESI = hex_array首地址
MOV EDI,ECX
PUSH EBX
ADD EDI,ECX
XOR EAX,EAX
ADD EDI,ECX // EDI = hex_len * 3
MOV EBX,ECX // EBX = hex_len
MOV [EDX + EDI],AL // 字符串末尾的'0'
__next2:
DEC EBX
MOVZX EAX,[ESI + EBX]
MOV ECX,EAX
AND AX,0x0F
SHR ECX,4
MOV AH,[EAX + ASCTABLE]
MOV AL,[ECX + ASCTABLE]
MOV [EDX + EDI - 3],AX
MOV EAX,' '
MOV [EDX + EDI - 1],AL
SUB EDI,3
JNZ __next2
MOV EAX,EDX // return = assic_str
POP EBX
}
#pragma warn +8002
}
#pragma warn +8070
netsys2
2002-12-31
打赏
举报
回复
是你自己编写的PORT函数!
blcr
2002-12-31
打赏
举报
回复
MyPort( &portNO,buf);
MyPort()是个什么东西???
netsys2
2002-12-31
打赏
举报
回复
BYTE portNO = 0x260;
BYTE buf[100];
//Put you data in buf
MyPort( &portNO,buf);
模型导出与跨平台部署:从PMML到ONNX的生产实践
机器学习模型部署不是简单保存文件,而是将训练成果转化为可复用、可移植、可维护的数学本体。其核心在于剥离框架依赖,通过标准化中间表示(如PMML、ONNX)实现跨语言、跨平台、跨硬件的推理一致性。PMML以XML形式保障可读性与Java生态兼容,适用于传统机器学习;ONNX以二进制Protocol Buffer定义计算图,支持深度学习算子并适配CUDA、DNNL等硬件加速器,是云边端协同推理的事实标准。二者共同解决模型导出、预处理内建、Stub轻量化及高并发内存管理等关键工程问题,直接决定模型能否在
在线
服务、
tchMaterial-parser:把国家中小学智慧教育平台的电子课本完整存成离线 PDF
tchMaterial-parser 是一个免费的开源图形化工具,帮教师、学生与家长把国家中小学智慧教育平台的电子课本解析下载为本地 PDF,解决
在线
预览无法离线保存的问题。 [、垃圾回收(GC)、中间语言(IL)和程序集加载机制,构成了整个.NET技术栈的运行契约。从1.0强制统一类型系统与托管内存,到2.0引入泛型解决装箱拆箱性能瓶颈;从3.0通过WCF/WPF/WF抽象分布式通信与UI层,到4.0以TPL和DLR预埋并行计算与动态语言支持——每一次升级都直面真实工程痛点。这些设计不仅塑造了ASP.NET Core、EF Core和gRPC等现代框架的架构逻辑,更持续影响云原生场景
编译器 | 从工业实现到极简设计 —— 编译器的多元形态与实践
……
【信息科学与工程学】【数据中心】第三十五篇 云计算数据中心的学科知识04
编号学科(课程)核心知识点在云计算/云存储/云网络/云安全/云MaaS中的作用代表教材/资料/论文 + 数学方程式列表工业界应用D1421云原生数据库:TiDBHTAP(混合事务/分析处理)、分布式SQL、水平扩展、强一致(Raft)、自动故障恢复、与MySQL兼容、TiFlash列式引擎提供弹性扩展的分布式数据库;支撑高并发
在线
交易与实时分析教材:《TiDB in Action》PingCAP(2020) 论文:《TiDB: A Raft-based HTAP Database》(2017)
茶馆
551
社区成员
20,044
社区内容
发帖
与我相关
我的任务
茶馆
C++ Builder 茶馆
复制链接
扫一扫
分享
社区描述
C++ Builder 茶馆
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章