回覆列表
  • 1 # 你永遠追不上的巨人

    使用~按位取反運算的時候,計算機會將運算元所對應的二進位制表示式的每一個位進行取反計算,取反後所得到的值就是~按位取反的運算結果。例如,假如計算機是32位的,接下來要計算~5的值,計算過程如下:5 的二進位制表示式為:0000 0000 0000 0000 0000 0000 0000 0101執行~運算,即~5後: 1111 1111 1111 1111 1111 1111 1111 1010,即結果為-6以上過程沒有任何問題,但如果忘記了負數的二進位制表達方式,那麼就會對這個結果產生疑問,為什麼1111 1111 1111 1111 1111 1111 1111 1010表示-6,可能會以為它應該表示-10等等,所以,使用~按位取反的另一個關鍵就是理解1111 1111 1111 1111 1111 1111 1111 1010為什麼表示-6,也即理解負數的二進位制表達方式。擴充套件資料js取整~是按位取反運算,~~是取反兩次在這裡~~的作用是去掉小數部分因為位運算的操作值要求是整數,其結果也是整數,所以經過位運算的都會自動變成整數除了~~n 還可以用n>0n|0

  • 中秋節和大豐收的關聯?
  • 有沒有好的隊名,或是組名?