[問題] 請問這行組語是哪個指令集?

作者: zzss2003 (brotherD)   2017-09-21 14:45:44
網址:https://blog.regehr.org/archives/28
問題:https://imgur.com/a/lPFBB
想請問,4(%esp), %eax
$3, %eax這兩行是哪個指令集的組語。
另外abstract machine是什麼意思?指的是還沒經過編譯器編譯的high-level程式碼嗎?(因
為不同的編譯器可以編譯成好幾種不一樣的組合語言),所以只能用抽象的概念去形容這段
程式碼的功能。
如我小弟的理解有錯,歡迎大力的鞭>///<
作者: LPH66 (-6.2598534e+18f)   2017-09-21 15:01:00
AT&T 語法的 x86 組語
作者: johnjohnlin (嗯?)   2017-09-21 15:01:00
x86?
作者: LPH66 (-6.2598534e+18f)   2017-09-21 15:02:00
寫回 Intel 語法是 mov eax, [esp+4]; add eax, 3www.imada.sdu.dk/Courses/DM18/Litteratur/IntelnATT.htmhttps://en.wikibooks.org/wiki/X86_Assembly/GAS_Syntax抽象機器的概念是這樣的: 我們規定一段程式碼在抽象機器上的運作方式, 然後觀察這樣運作之後它所產生的結果(這不只代表輸出, 還包含部份附帶效應)那實際上的編譯器在編譯時就需要對同樣這段程式碼產生能得到同樣結果的機械碼出來以你貼的圖來說, 呼叫這個函數的結果是回傳了 x+3 的值那編譯器可以直接產生回傳 x+3 的指令 (即是下面的組語)簡單說就是: 結果對就好, 過程不論; 這就給最佳化提供空間
作者: VictorTom (鬼翼&娃娃魚)   2017-09-22 00:52:00
推:)

Links booklink

Contact Us: admin [ a t ] ucptt.com