二进制里的「逢二进一」是什么意思
生活随笔
收集整理的這篇文章主要介紹了
二进制里的「逢二进一」是什么意思
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這個回答里包括如下內容,逐步更新。
我們常用的是十進制,使用0、1、2、3、4、5、6、7、8、9這十個符號來表示數字,當十個符號不夠用的時候,我們就再多使用一個符號,來表示「這里還有一位」的意思。
例如,當數到9的時候再加就沒有符號可以用了。這個時候我們先在左邊寫上1,變成「1_」,說明有1個完整的「循環」,然后再說「除了完整循環之外,還有多少個數字」,在這里是0,因此整個數字表示為「10」,表示了「比9個還要再多1個」
上面講了當我們有十個符號的時候,如何表示數字。但是當我們有只有二個符號的時候,實際上也可以表示數字。這里取「0」、「1」兩個符號。由于只有兩個符號,因此這種表示法稱為「二進制」。
于是,最小的那個非負整數,就用0表示,比0大1的,就用1表示,再大1的時候,由于沒有符號可用了,只好采取上面十進制的辦法,先在左邊寫上1,變成「1_」,然后再看「除了完整循環之外,還有多少個數字」,這里是0,于是就變成了「10」。但在這個時候,對于十進制來說,之要用「2」這個符號就可以了。也就是說十進制的「2」所表示的數字和二進制的「10」是相同的。
讀到這里,應當能明白,首先有了「抽象意義的數」,然后需要將這個數字表示出來,但是可用的符號又是有限的,因此,在符號有限的約束上,產生了「進制」。十進制就是說用十個符號來表示,二進制就是說用兩個符號,十六進制就是說用十六個符號。
對于同一個「抽象意義的數」來說,用不同進制的表示可能是不同的,但是不同進制表示了同一個「抽象意義的數」,因此是可以轉換的。
實際上,高進制向低進制轉換,是在數「完整循環」。最簡單的轉換方式就是做除法求余數,然后把余數按規則排列,就可以得到低進制的表示了。教材上有更多方法,不再贅述。
例如,十進制數1000(后面用【數字[進制]】這個格式來表示數字,例如十進制數1000表示為【1000[10]】),表示為二進制的1111101000(【111101000[2]】)。
低進制向高進制轉換是在「消除循環」,轉換為十進制的時候,只要數出一共有多少循環就可以了。教材上使用冪級數列求和的辦法已經很好,不再贅述。
例如【111101000[2]】=0*2^0 + 0 *2^1 + 0*2^2 + 1*2^3+0*2^4+1*2^5 + 1*2^6 + 1*2^7+ 1*2^8 + 1*2^9 = 0 + 0 + 0 + 8 + 0 + 32 + 64 + 128 + 256 + 512 = 【1000[10]】。
由于16是2的倍數,因此這兩種進制轉換的時候有很多簡化辦法,例如一個十六進制的「位」可以恰好拆成4個二進制的「位」,于是在任意位置的十六進制數,都恰好對應4個二進制數的組合,例如【B[16]】就精確對應【1011[2]】,無論【B[16]】出現在十六進制的哪一位,都精確對應了這個二進制。比如【BA[16]】=【10111010[2]】、【5B[16]】=【01011011[2]】。
這種良好的對應關系,也是計算機多用十六進制表示數據的一個原因(實際上,八進制也有一樣的優勢,不過由于其進制數小于十進制的進制數,所以使用沒有十六進制廣泛,八進制典型的使用就是類unix系統的權限(對的,777權限是八進制))。
具體的轉換法略過。
使用二進制作為中介進制,可以快速、簡單、高效的完成十六進制與十進制的轉換。
http://luju.me
總結
以上是生活随笔為你收集整理的二进制里的「逢二进一」是什么意思的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 读取txt文档
- 下一篇: 论文精读2: Ground-to-Aer