如何在堆棧上放置64位長地址? 我有這個目前:在堆棧上放置64位地址
//setup the stack
push rbp;
mov rbp, rsp;
sub rsp, 80; //80 bytes for stack, 9 args of 64 bits + 64 bits for the function address
mov qword [rbp - 72], 0xfefefefe12345678; // <--- won't work
call [rbp - 72];
//Restore stack
mov rsp, rbp;
pop rbp;
ret 80; // <---- Is this correct?
而且,是ret
正確的嗎?
謝謝先生,第二個選項就是我正在尋找:) – alexandernst
順便說一句,那麼我的電話會如何工作?將'''調用[rbp - 72]'''讀取4或8個字節? – alexandernst
「調用」指令將始終讀取64位模式下的8字節地址。 'call immed'只使用32位立即數,因此只能調用當前位置+/- 2GB內的目標。 –