请教个很垃圾的问题……
在DELPHI当中。想把某个变量转换为基址。然后代入到汇编里面。应该怎么……
例如 pushi:='$14515E4'; 在汇编中如何转换成有效的代码
asm
MOV ecx,pushi
MOV edx,dword ptr ds:[ecx]
end;让汇编代码变成
asm
MOV ecx,$14515E4
MOV edx,dword ptr ds:[ecx]
end;
在DELPHI当中。想把某个变量转换为基址。然后代入到汇编里面。应该怎么……
例如 pushi:='$14515E4'; 在汇编中如何转换成有效的代码
asm
MOV ecx,pushi
MOV edx,dword ptr ds:[ecx]
end;让汇编代码变成
asm
MOV ecx,$14515E4
MOV edx,dword ptr ds:[ecx]
end;
上面汇编里面正确的代码。那么我在DELPHI里面应该怎么写才能实现呢
asm
MOV ecx,pushi
MOV edx,dword ptr ds:[ecx]
end;
可是这个变量应该怎么赋值才能实现到上图的代码。
pushi应该怎么声明和怎么赋值
LEA ecx,pushi
实际上在Delphi的BASM中可以直接写:
mov ecx, [large $14515E4]
生成的是直接寻址指令,就是mov ecx, dowrd ptr ds:[0x14515E4]
asm:ecx,i
asm
mov ecx,reg_ptr
end;