簡體   English   中英

匯編編譯 32 位、8 位

[英]Assembly compl 32 bit, 8 bit

我正在查看一些匯編代碼,我看到:

cmpl $0x1d32, -0x4(%ebp)

由於 -0x4(%ebp) 是 1 個字節,它顯然不能在其中存儲其他值 (7474)。 因此,此代碼何時將它們顯示為相等? 它只會比較立即值的最高/最低有效字節還是有某種隱藏的字擴展?

-0x4(%ebp)是一個地址,它沒有任何關聯的大小。 指令中的l后綴將大小指定為 32 位整數 ( long )。 因此,處理器將從給定地址開始獲取 4 個字節,並將其用作以小端字節序(即從最低有效字節開始)解釋它的操作數。

暫無
暫無

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

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