CBW CWDE CDQ CWD 擴充套件指令

2021-08-18 10:18:42 字數 1308 閱讀 6373

cdq 是乙個讓很多人感到困惑的指令。這個指令把 eax 的第 31 bit 複製到 edx 的每乙個 bit 上。 它大多出現在除法運算之前。它實際的作用只是把edx的所有位都設成eax最高位的值。也就是說,當eax <80000000, edx 為00000000;當eax >= 80000000, edx 則為ffffffff。

例如 :

假設 eax 是 fffffffb (-5) ,它的第 31 bit (最左邊) 是 1,

執行 cdq 後, cdq 把第 31 bit 複製至 edx 所有 bit

edx 變成 ffffffff

這時候, edx:eax 變成 ffffffff fffffffb ,它是乙個 64 bit 的大型數字,數值依舊是 -5。

備註:edx:eax,這裡表示edx,eax連用表示64位數

;cbw(convert

byteto

word):      將

al擴充套件為

ax;cwde(convert word to extended double): 將 ax 擴充套件為 eax

;cdq(convert doubleword to quadword): 將 eax 擴充套件為 64 位數 edx:eax

;cwd(convert word to doubleword):  將 ax 擴充套件為 dx:ax

;它們都是用符號位填充多出的空間

;它們對 eflags 無影響, 也無引數

CBW CWDE CDQ CWD 擴充套件指令

cbw cwde cdq cwd 擴充套件指令 cbw convert byte to word 將 al 擴充套件為 ax cwde convert word to extended double 將 ax 擴充套件為 eax cdq convert doubleword to quadword ...

php uuid 擴充套件,PHP 擴充套件

編譯安裝時候沒有啟用下面擴充套件的,可以單獨安裝 php關鍵性擴充套件安裝 www lanmps 假設 套件 安裝目錄 www lanmps php 7.0.11 假設 php 安裝目錄 1.fileinfo 擴充套件 它應用於檔案處理的改進 進入套件解壓縮後目錄 假設套件目錄為 root lanm...

位擴充套件和字擴充套件

字位擴充套件 儲存資訊一般是儲存在儲存器 rom ram 上的 在實際應用中,經常出現一片rom或ram晶元不能滿足對儲存器容量需求的情況,這就需要用若干片rom或ram組合起來 形成乙個儲存容量更大的儲存器。而組合方式有子擴充套件和位擴充套件兩種。字擴充套件用多片位寬相同的儲存器 rom或ram ...