線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1124
推到 Plurk!
推到 Facebook!

DELPHI 内联asm 压入字符串问题?

尚未結案
xie139
一般會員


發表:2
回覆:1
積分:0
註冊:2007-10-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-10-14 22:02:15 IP:117.45.xxx.xxx 訂閱
DELPHI 内联asm 压入字符串问题。
以前我没太注意,今天一个朋友问我DELPHI压入字符串,我随手给它编了一段代码:
var
Form1: TForm1;
dz01:string[100];
implementation

procedure acc;stdcall;
begin
dz01:= 'acc ';
asm
pushad
mov ebx,$754ea4
mov ecx,dword ptr ds:[ebx]
push offset dz01
mov ebx,$430FD0
call ebx
popad
end;
end;
下面是以上DELPHI代码反汇编结果
0044E7BC 60 pusha
0044E7BD BBA44E7500 mov ebx, $00754EA4
0044E7C2 3E8B0B mov ecx, ds:[ebx]
0044E7C5 682C044500 push $0045042C
0044E7CA BBD00F4300 mov ebx, $00430FD0
0044E7CF FFD3 call ebx
0044E7D1 61 popa
0044E7D2 C3 ret
而达不到ASM的偏移指针(压入字符串)的效果
DELPHI 效果:0044E7C5 682C044500 push $0045042C
要达到的效果:0044E7C5 682C044500 push offset dz01
DELPHI有不有办法达到这个效果?
編輯記錄
xie139 重新編輯於 2007-10-15 01:41:01, 註解 無‧
系統時間:2024-05-04 12:06:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!