二進位轉十進位
在瀏覽器裡把二進位轉成十進位,採用任意精度運算,並顯示各種暫存器寬度下的有號讀法。
在你的瀏覽器中執行
請輸入一個數字。
多長都精確
二進位字串很快就會變得很長——一個 64 位元的值就是 64 個字元——而那個長度正是用一般數字做 的轉換器開始回傳近似值的地方。
這裡用的是任意精度整數,200 位的二進位字串也能精確換算。
0b 前綴可有可無,數字之間的空白或底線會被忽略,所以大家實際會寫的分組形式——
0b1010 1010 或 1010_1010——貼上就能用。
有號讀法
一串二進位本身並沒有說明暫存器有多寬、是不是有號的,而這兩件事都會改變那些位元的意義。
11111111 當成無號位元組是 255,當成有號的則是 −1。轉換會把兩者都列出來,在每一個
數值放得進去的寬度上,這樣你就不必自己動手算二補數。
而那通常正是一開始要讀二進位的理由:一個狀態暫存器、一組權限遮罩,或某個最高位是符號位的 壓縮欄位。
位元數的計算
顯示的位元數是數值本身需要的位元數,不是任何容器的寬度。255 需要 8 位元,256 需要
9 位元。
當你要確認某個值塞不塞得進某個地方時,這個區別就有意義了。一個需要 33 位元的數字放不進 32 位元的欄位,不管它的十進位形式看起來如何。
沒有任何上傳
在這個頁面裡轉換。