看流星社区

 找回密码
 注册账号
查看: 2777|回复: 3

[Delphi] const 常量在插入汇编中调用的问题请教高手

[复制链接]

该用户从未签到

发表于 2011-3-28 09:26:07 | 显示全部楼层 |阅读模式
定义了
const
    AAA : DWORD=$12345678;
在代码中如下:
procedure proc1;
begin
  asm
      pushad
      mov  eax, AAA    //  此处希望把 $12345678 赋给 eax, 但实际赋的不是$12345678
      popad
  end;
end;

请教高手应该如何实现正确地将 AAA的值赋给 eax?

该用户从未签到

发表于 2011-3-28 09:26:22 | 显示全部楼层
楼主对pushad 、popad这两个命令估计不是很理解
pushad包含了push eax,popad包含了pop eax
就是说结束时eax是你push进来的那个eax,而不是你赋值的那个

该用户从未签到

发表于 2011-3-28 09:26:41 | 显示全部楼层
常量在插入汇编没必要用 const 吧
直接 MOV EAX,$12345678 不好?

该用户从未签到

发表于 2011-3-28 09:27:02 | 显示全部楼层
我没试过是不是不能用常量定义,不过如果你试了确实不能用的话也可以定义一个变量呀
var  
  tmpge:dword;
begin
  asm
    mov tmpge,$1234567
    .............
  end
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-3-29 21:40

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表