[問題] linux inline assembly

看板CSIE_ASM作者 (braveforever)時間19年前 (2006/12/11 19:58), 編輯推噓4(400)
留言4則, 1人參與, 最新討論串1/1
想問一下在linux下c程式中加入一段assembly code的方法, complier為gcc 在網路上看了一些資料後仍不懂(感覺上很麻煩且沒有詳細的範例 ,組語規格為AT&T) 寫了一下程式測試大概為 int main(){ int i,k; i=1; asm( "movl %1, %%eax;" "addl %%eax,%0;" :"=r"(k) :"r"(i) :"%eax"); printf("%d\n",k); return 0; } 預計output結果為1,但郤為2. 記得第一堂上課時老師作了一個程式速度測試例子, 是相同程式分別用組語(inline assembly)與c實作,然後比較效能 所以想問老師可否提供作參考之用,謝謝^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.245.60

12/12 09:10, , 2F
asm_prog/mult.c
12/12 09:10, 2F

12/12 09:14, , 3F
A simple tutorial about inline assembly for x86 in linux:
12/12 09:14, 3F
文章代碼(AID): #15VKVKhV (CSIE_ASM)