万恶的ADDR 指令把我郁闷到了...

bingying19872008 2009-11-05 06:24:05
今天写1个小程序练手.有1过程
Swap PROC USES eax esi edi
然后 mov eax,3
INVOKE Swap,ADDR [Array+esi], ADDR [Array+esi+4]
原本以为因为使用了USES eax的 所以执行完INVOKE 后 eax 仍然为3....结果发现eax的值被改了.....郁闷了.
反汇编看.....
发现ADDR 执行2次操作......
lea eax,Array+4
push eax //假设eax此时为5
lea eax,Array
push eax //4
然后又接着因为使用了USES eax
又 push eax //4
一共push 了3次
最后的
ret 指令
pop eax 1次(因为用了USES)
接着就 ret 8(因为2次ADDR)
现在好了 eax 的值就被改成了4.....郁闷啊
你说你ADDR 要是 先push 在lea 多好...
现在我每次使用 USES eax,INVOKE ADDR 这3个指令的时候在调用eax 前都习惯保存下eax,在INVOKE后再调用....
郁闷啊.....
发发牢骚....

...全文
160 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文研究了基于麻雀优化算法(SSA)优化CNN-BiLSTM-Attention混合模型的风电功率预测方法,采用多变量输入实现单步预测。通过SSA算法对模型的关键超参数进行智能寻优,有效提升了预测的精度与鲁棒性。该混合模型充分融合了卷积神经网络(CNN)的局部特征提取能力、双向长短期记忆网络(BiLSTM)对时序数据前后依赖关系的建模优势,以及注意力(Attention)机制对关键时间步特征的自适应加权聚焦能力,能够深入挖掘风电数据中复杂的非线性动态特性与时序关联模式。研究在Matlab平台上完成了完整的代码实现,并通过严谨的实验验证了所提方法在风电功率预测任务中相较于传统模型的优越性能。; 适合人群:具备一定机器学习与深度学习理论基础,熟悉Matlab编程环境,从事新能源发电预测、电力系统调度、智能优化算法应用或相关领域研究的科研人员、工程技术人员及高年级研究生。; 使用场景及目标:①应用于风电场实际运行中的短期功率单步预测,为电网调度决策提供高精度数据支持,提升新能源消纳能力和系统运行稳定性;②为深度学习模型的超参数优化提供一种高效的智能算法应用范例;③作为融合多种先进神经网络结构与元启发式优化算法的综合性研究案例,服务于学术科研复现、技术创新与教学实践。; 阅读建议:建议读者结合提供的Matlab代码,深入理解从数据预处理、模型构建、SSA优化流程到结果分析的完整技术链条,重点关注多变量特征选择、网络结构设计细节及注意力机制的实现原理,并可通过替换数据集或调整模型组件来进一步拓展研究深度与应用广度。

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧