Q
兩個補碼解釋
0
A
回答
1
如果它的有符號整數(它的最高有效位)用作其符號位。如果符號位爲0,則數字爲正數。如果符號位爲1,則該數字爲負數,並以2的補碼形式表示,編譯器執行2的補碼操作來處理這些負數整數。
但是,在無符號整數被明確聲明爲「無符號整型」的情況下,沒有符號位,也沒有2的補碼解釋。
因此對於帶符號的8 bin int 11111011是5的2的補碼,因此代表-5,但對於無符號8位int 11111011是251,如您所述。
1
你不能!這是許多語言簽署和未簽名類型的原因。編譯器/解釋器知道是否將二進制值解釋爲有符號(二進制補碼)或無符號二進制值。
4
他們都沒有。 11111011
只是一個位模式 - 它只會在某些操作(如算術)中使用某種內在意義。
根據您使用的操作,解釋可能不同或不同 - 使用2的補碼的原因是例如,在整數運算中,無論將其解釋爲有符號還是無符號,操作的位模式結果都是正確的。
1
爲了更好地瞭解兩補看看比特串的Wikipedia page
的解釋取決於誰是要使用這些數據的說明。如果您將變量聲明爲無符號位,則將該位解釋爲常規二進制數。否則,如果您將其聲明爲有符號變量,則它將被解釋爲二進制補碼值。
相關問題
- 1. 減法兩個補碼
- 2. 兩個Python解釋器
- 3. 兩個補碼符號擴展python?
- 4. 查找兩個哈希的(深)補碼
- 5. 解釋這個C++代碼
- 6. 解釋這個代碼
- 7. 解釋這個Groovy代碼?
- 8. 解釋這個代碼
- 9. 需要解釋關於補碼的想法
- 10. 解釋補丁的輸出--dry-run
- 11. 瞭解二的補碼
- 12. 理解二的補碼
- 13. 解釋代碼
- 14. 解釋碼
- 15. 解釋代碼
- 16. 代碼解釋
- 17. 代碼解釋
- 18. 解釋代碼
- 19. 僞碼解釋
- 20. 解釋代碼
- 21. 與代碼解釋
- 22. 代碼解釋as.Date
- 23. SED代碼解釋
- 24. OnResultExecuted()代碼解釋
- 25. 代碼解釋(MPICH)
- 26. Stata代碼解釋
- 27. 解釋Python代碼
- 28. Matlab:repmat代碼解釋
- 29. array.filter代碼解釋
- 30. 解釋matlab代碼