cdq 指令

(參考了網上的文章記錄而來)

cdq的作用無非就是將一個32位有符合數擴展爲64位有符合數(帶符號位的擴展),數據能表示的數不變。

具體是這樣實現的,比如eax=fffffffb(值爲-5),然後cdq把eax的最高位bit,也就是二進制1,全部複製到edx的每一個bit位,edx變成 FFFFFFFF。

這時eax與edx連起來就是一個64位數,FFFFFFFF FFFFFFFB ,它是一個 64 bit 的大型數字,數值依舊是 -5。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章