什麼是二進位,這裡讓你通俗易懂

2021-01-12 華清遠見成都中心

關於計算機的二進位,首先來想想我們日常使用的十進位。

那麼為什麼我們日常要使用十進位呢?其實看看你的雙手,一共有幾根手指?是不是一共十根?那麼10 代表的就是一雙手的手指的數量。例如1234,他所代表的示意是:

1 * 1000 + 2 * 100 + 3 *10 + 4 *1 。

換一個形式就是1 * 10^3 + 2 * 10^2 + 3 * 10^1 + 4 * 10^0 。

但是到了計算機裡這種數值表述方式就麻煩了,如果我們要在計算機保存十進位數值那麼,計算機得有能力用某種形式描述出至少10種狀態才行也就是0到9。

那麼想像一下要是我們每隻手只有3個手指,那麼如果10 依舊代表一雙手(六根手指),此時12相當於一雙手加兩個手指 也就是「八」。這種計數方式我們可以稱為6進位。那麼234這個數值在六進位裡代表什麼呢?2 *6^2 + 3*6^1 + 4*6^0

遺憾的是計算機沒有手指。那它如何描述不同的數值呢?使用高低電平(也就是較高電壓和較低電壓),舉個例子,假如你有一個電子遊戲機,它使用的是三節5號電池,電壓就是4.5V,那麼它會用大於2.5v的電壓代表高電平小於1v的電壓代表低電平,這樣就可以區分出兩種不同的狀態。為什麼這麼幹呢?因為使用這種表述方式的電路設計相對簡單。

這就好像計算機一共只有兩根不同的手指。那麼怎麼描述數值呢?使用「二進位」方式。

在十進位裡,我們的每一位數值需要10種狀態 0 1 2 3 4 5 6 7 8 9 ; 那麼二進位裡只需要 0 和1 就夠了,並用高電平對應1,低電平對應0。這個時候 10 依舊代表計算機的全部「手指」,也就是 「二」。110呢?自然就是 1 * 2^2 + 1 * 2^1 + 0 * 2^0 也就是 1*4 + 1*2 + 0這不就是相當於十進位裡的6嘛!那麼1010呢 1*2^3 + 0 * 2^2 + 1 *2^1 + 0 *2^0 這是不是就是十進位數值裡的 「十」 ?

但是新的困惑又來了。如果我們寫一個 數字 10 在我們不知道它的進位的前提下,你能確定它到底代表的是幾個手指嗎?可能是 二 可能是 六 也可能是 十。所以為了在書寫是方便區分一般我們要在二級制數值前面加一個標記「0B」,也就是 0B10 或者換一個數字 0b10101010。

最後我們來試著計算一下 0b1111 是我們人類自然數值中的幾?8 + 4 +2 +1 = 15

0b1011呢? 8 + 0 + 2 + 1 = 11

0b1100 8 + 4 + 0 +0 = 12

那麼 十進位的 9 呢?變成二級制就是 0b1001

123 就是 0b01111011

這樣我們就可以讓計算機用二級制保存保存我們人類的自然數啦。

相關焦點

  • 二進位、八進位和十六進位之間轉換
    我們不妨將思維拓展一下,既然可以用 0~9 共十個數字來表示數值,那麼也可以用0、1兩個數字來表示數值,這就是二進位(Binary)。例如,數字 0、1、10、111、100、1000001 都是有效的二進位。在計算機內部,數據都是以二進位的形式存儲的,二進位是學習編程必須掌握的基礎。
  • 計算機二進位數據是什麼,和十進位有什麼區別?還有其他的進位嗎
    大家好,我是阿戴,歡迎到我的地盤,作為一名計算機愛好者,期待更多人了解編程,期待每一篇文章都能夠讓你增加知識,如果喜歡,請關注、轉發,謝謝。在看科技電影或電視劇的過程中,我們經常看到這樣的畫面,電腦屏幕上在快速閃爍著大量的數字0和1,感覺非常神秘、非常高大上的樣子。
  • 我來告訴你二進位到底是個什麼東西?
    今天有幾個人跑過來問我,二進位是什麼東西?我心想,你們算是問對人了,於是張口就來,這是一個非常神奇的東西,能讓1+1等於10,瞬間感覺看到他們頭上飄過幾個what?為什麼說它是十進位數呢,細心一點可以發現它是用數字0到數字9十個數字來表示的一個數,同樣的從這裡我們也可以認為二進位數就是用數字0和數字1兩個數字來表示的數,例如101,事實證明也並無毛病。168,國語說法是一百六十八,在小學數學裡它的意思是個位是8,十位是8,百位是1,它的結果可以用一條數學來表示,即168=1×100+6×10+8×1。
  • 二進位轉換十進位,十進位轉換二進位
    如果把一個十進位的數轉換成二進位的數 , 直接把數除 以二 , 餘數為一就寫1 , 整除 , 就寫0 , 一直除完為止
  • 6、計算機進位之二進位、十進位、十六進位之間的轉換
    4、進位之間的轉換4.1、正整數的十進位轉換二進位將一個十進位數除以二,得到的商再除以二,依此類推直到商等於一或零時為止,倒取除得的餘數,即換算為二進位數的結果4.2、二進位轉換為十進位二進位轉十進位的轉換原理:從二進位的右邊第一個數開始,每一個乘以2的n次方,n從0開始,每次遞增1。然後得出來的每個數相加即是十進位數。
  • 計算機使用二進位
    在日常生活中,我們使用的是十進位,那麼我們為什麼會使用十進位?什麼是十進位?在計算機中我們還使用十進位嗎?
  • 二進位,八進位,十進位,十六進位之間的轉換
    說起二進位,十進位等大家都很熟悉,但是如果讓你相互轉換,你還會麼?
  • 二進位、十進位和十六進位
    持續更新中······最新隆重推出「作品定製」,定製方法點擊菜單欄「DIY」即可進位,看似很簡單的東西,但很多同學還是不能徹底理解。這裡先簡單介紹一些注意事項,然後還是從實驗中講解會比較深刻。二進位就是逢二進位,它的一個位只有兩個值:0 和 1,但它卻是實現計算機系統的最基本的理論基礎,計算機(包括單片機)晶片是基於成萬上億個的開關管組合而成的,他們每一個都只能有開和關兩種狀態,再難找出第三個狀態了(不要辯解半開半關這個狀態,它是不穩定態,是極力避免的),所以他們只能對應於二進位的 1 和 0 兩個值,而沒有 2、3、4......,理解二進位對於理解計算機的本質很有幫助。
  • 你知道什麼是二進位嗎?先看看你能看懂這句話嗎?
    說到二進位,肯定有很多小夥伴都有一定的了解,同時也會有一些還沒有了解到。懂不懂二進位看看下面這句話就可見分曉。「世界上有10種人...一種是懂二進位的,另一種是不懂二進位的。」我們平時數學上學習的都是十進位,我們都習以為常。其實二進位也是一樣的,十進位是逢十進一,二進位顧名思義就是逢二進一。十進位裡的數是由「0,1,2,3,4,5,6,7,8,9」這十個數字符號組成,在十進位裡我們沒有見到一個數字符號表示10,因為逢十進一嘛,同樣在二進位裡不會出現2及其以後的數,二進位裡只有0和1。說了半天,十進位的數如何轉成二進位呢?方法很簡單,進行除二取餘,參考下圖。
  • JS十進位轉換二進位
    最近因為需求,要接觸到前端JS的一些東西,遇到需要把十進位數字轉換為二進位,並且補全對應位數,覺得蠻有趣的,所以把它記錄下來。十進位轉二進位方法其實很簡單,一個函數搞定了:var value = parseInt(12).toString(2);//parsetInt裡面是要轉換的數字,toString裡面是要轉換的進位,//如果要轉換為其他進位,替換掉就好了,so easy。
  • 進位轉換 二進位轉十進位
    上節課我們學習了十進位轉換成二進位的方法,那二進位轉換十進位是怎麼轉換的呢?
  • 二進位轉換為十進位和十進位轉換為二進位的方法
    各位小夥伴們大家好,在之前的文章中小編也介紹了關於二進位轉十進位的方法,這次小編知道了一個更簡單的方法,具體如下:比如我們要把28轉為二進位:28轉換為2進位先用2的n次方來表示28這個數,然後用2的n次方乘以1或者乘以0,相加來湊成與之相等的數,得到的1或者是0,根據這個表格,從左往右把二進位數字湊在一起,11100就是28的二進位了。
  • 10、進位轉換:二進位、八進位、十六進位、十進位之間的轉換
    將各個位的數字乘以位權,然後再相加,就得到了十進位形式。注意,這裡我們需要以十進位形式來表示位權。1) 二進位整數和八進位整數之間的轉換二進位整數轉換為八進位整數時,每三位二進位數字轉換為一位八進位數字,運算的順序是從低位向高位依次進行,高位不足三位用零補齊。下圖演示了如何將二進位整數 1110111100 轉換為八進位:
  • 二進位、八進位、十六進位在現實當中有什麼意義?
    二進位二進位的出現是創歷史性的,在古代就有兩儀生四象,四象生八卦,八卦生萬物的說法,世間萬事萬物至少都有兩個狀態,比如生存/死亡、開/關、好/壞、高/低、大/小、長/短、胖/瘦等,這兩個狀態就可以使用二進位的0和1來表示。如今二進位主要運用於電子技術的數字電路當中,就比如計算機,最直接能夠識別的語言就是二進位語言。
  • 計算機的語言——二進位,十進位、八進位、十六進位與二進位之間的轉換
  • 二進位、八進位、十進位、十六進位之間的轉換
    反過來,當我們看到 FD時,如何迅速將它轉換為二進位數呢?先轉換F:        看到F,我們需知道它是15(可能你還不熟悉A~F這六個數),然後15如何用8421湊呢?應該是8 + 4 + 2 + 1,所以四位全為1 :1111。接著轉換 D:        看到D,知道它是13,13如何用8421湊呢?
  • 二進位、八進位、十進位與十六進位
    例如對於二進位來說,該規則是「滿二進一,借一當二」;對於十進位來說,該規則是「滿十進一,借一當十」。其他進位也是這樣。A 8)16訣竅:因為每四位二進位數對應一位十六進位數,所以,以小數點為界,整數位則將二進位數從右向左每4位一隔開,不足4位的在左邊用0填補即可;小數位則將二進位數從左向右每4位一隔開,不足4位的在右邊用0填補即可。
  • 為什麼電腦採用二進位?十進位究竟代表人腦的進化還是退化?
    計算機在計算的時候是這樣操作的,人們輸入一個十進位數據,計算機將十進位數據轉化為二進位數據,再對這個二進位數據進行運算,得出一個二進位數據的結果,最後再把二進位數據的結果轉化為十進位數據的結果。看上去好像更複雜了,但對於大數據的複雜運算,這樣操作的速度是要遠遠高於直接用十進位數據來運算的,只是計算機為了適應人類十進位的習慣,才多轉化了兩次而已。其實,我國古代很早就有二進位的意識。
  • 計算中二進位與十進位之間的轉換,你能看懂嗎?
    一、何為進位進位也就是進位位,是人們規定的一種進位方法。對於接觸過電腦的人來說應該都不陌生,我們常用的進位包括:二進位、八進位、十進位與十六進位,它們之間區別在於數運算時是逢幾進一位。比如二進位是逢2進一位,十進位也就是我們常用的0-9是逢10進一位。
  • scratch製作「二進位轉十進位」
    我們之前學習並製作過「十進位轉二進位」的小程序:如圖:學生作品2「十進位轉二進位」接下來我們製作「二進位轉十進位」的小程序。樣例輸入:11011樣例輸出:27方法1,從前向後遍歷新建變量:二進位,用於存儲回答中輸入的二進位數字長度,輸入二進位數字的長度(scratch相對簡單,不用區分變量的類型)十進位,初始化為0,用於累加轉換好的數字和最後的輸出。