2011-05-05 55 views

回答

16

宏被用來創建您經常使用的代碼模板,而不是輸入一個常數。因此,我不相信匯編程序在表達式中進行宏觀擴展。既然你只是想要一個數字,你可以用.set定義一個常數。

.set S, 40 
mov %eax, S 

此外,如果您通常使用Intel語法,請確保您知道這是什麼代碼是這樣做的:它目前在地址0×28 EAX存儲在內存中的價值。如果你想把40號在EAX,你需要扭轉操作數和S.

mov $S, %eax 
+0

前面使用美元符號你的答案是非常有用的,全面的,謝謝! – 2011-05-05 17:35:32