簡體   English   中英

將指針分配給匯編和c中的指針

[英]assign a pointer to a pointer in assembly and c

在C方法中,給定唯一要存儲在%ecx寄存器中的局部變量int i(未初始化),並給定位於%ebp + 8中的以下結構:

typedef struct {
  char c;
  int k;
  int *m;
} S1;

我如何將以下代碼轉換為匯編語言(at&t語法):

i=*(a.m);
i=i+a.k;

謝謝!

鑒於我是int,在masm中它將是這樣的:

;i = *(a.m);
mov eax, [ebp+13]  ; 13 = +8+1+4
mov ecx, [eax]     ; store i in ecx

;i = i + a.k;
mov eax, ptr [ebp+9]  ; 9 = +8+1
add ecx, eax          ; new value of i

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM