簡體   English   中英

按位運算符-精度

[英]Bitwise operators - precision

我似乎要堅持的三個問題:

  1. 為什么代碼x & ~077比代碼x & 0177700這一行更好。 會因為精度損失少嗎?

  2. 為什么此代碼不能正確設置數字中的第5位? num = num + 0x20是因為我們需要使用邏輯或| ,而不是+嗎?

  3. 為什么此代碼x & 0xFF比這行代碼(x << 24) >> 24更好? 正確的表達式可能導致符號擴展,從而更改了原始int。 從我所做的示例中,我確信這是正確的。

1,為什么此代碼x和〜077比這行代碼x&0177700更好。

因為在第二篇文章中,您假設x的整數類型的長度

2,為什么此代碼不能正確設置數字中的第5位? num = num + 0x20是因為我們需要使用邏輯或|,而不是+?

是! 他們是不同的運營商。

暫無
暫無

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

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