專欄導航
本節文章分別屬于《Win32 學習筆記》和《MFC 學習筆記》兩個專欄,故劃分為兩個專欄導航。讀者可以自行選擇前往哪個專欄。
(一)WIn32 專欄導航
上一篇:計算機基礎:二進制基礎05,八進制簡介
回到目錄
下一篇:無
(二)MFC 專欄導航
上一篇:計算機基礎:二進制基礎05,八進制簡介
回到目錄
下一篇:無
本節前言
上一講,我講了八進制的引言部分。主要就是講學習八進制的意義。水了一節。
這一節呢,我們來講,用八進制來數數。
一.? ? 十進制與二進制數數的回顧
(一)十進制計數回顧
在十進制里面,共有十個表示數字的符號,為 0 到 9。用十進制來查數的時候,基本的法則,是逢十進一。
比如,從1數到9之后,9的下一個數,是 10 。9是單獨的某一位里面最大的數,再加一的話,就需要令此位歸零,并向上進一位。
9之后是10,19之后是20,29之后是30 。而99之后呢?個位需要歸零,然后向十位進一位。十位也是 9,加上個位進過來的 1 以后,也要歸零,并向上進一位,也就是向百位進一位。結果呢,99變為 100 。999之后是1000,9999之后是 10000 。
逢十進一,這是十進制的基本計數方法。
(二)二進制計數回顧
在二進制里面,有兩個基本的,用來表示數字的符號,它們分別是 0 和 1 。用二進制來查數的時候,基本的法則,是逢二進一。
從 0 開始查數的話,首先是 0,下一個是 1 。
1之后是啥呢?由于 1 已經是二進制數的單個符號里面的最大值,沒有比它再大的了。所以呢,再往下數的話,那就得是 1 歸 0,然后,向上進一位,結果呢,1 的下一個數,是【)B 10】。
【0B 10】之后呢,是【0B 11】。【0B 11】之后是啥呢??
右邊的位為1,再往下數的話,1 歸為 0,然后向上進一位,也就是向左邊的位進一位。左邊的位也是1,加上右邊進位過來的1 以后,它也要歸零,并向上進一位。結果呢,【0B 11】的下一個數,是【0B 100】。
【0B 101】的下一個數是【0B 110】。
【0B 111】的下一個數是【0B 1000】。
【0B 1001】的下一個數是【0B 1010】。
【0B 1011】的下一個數是【0B1100】。
【0B 1101】的下一個數是【0B 1110】。
【0B 1111】的下一個數是【0B 10000】。
【0B 11111】的下一個數是【0B 100000】。
【0B 11 1111】的下一個數是【0B 100 0000】,對于這個數,由于數位太多,所以呢,書寫的時候,我就從右邊數,每4個二進制位算作一組,滿一組以后,若是再往高位還有數,那就空一格,來放置高位數。
在上面,我寫的是6位與7位的四位一組分隔寫法。如果是16位呢?請看下面的示例。
0B 101 0100 1011
懂了沒?從右邊數,四個一組。滿一組之后,左邊還有數位,那就空一格,然后放置剩余的高位。剩余的高位,依然是4位一組,滿4位以后,依然還有更高的位,那就在這從右往左數的第二個4位的左邊,再空一格,然后放置剩余的高位。
我們再來看一個32位數的書寫例子。
0B 1011 1001 1010 0010 1001 0000 0100 0110
我有點說不明白這個規律。但是呢,經過這樣子的舉例,我相信,你應該是能夠看懂了。
二.? ? 八進制數數
在上面,我是回顧了十進制數數和二進制數數。接下來呢,我來講解八進制數數。
十進制有 10 個表示數的基本符號,為 0 到 9 。
二進制有 2 個表示數的基本符號,為 0 和 1 。
類似地,八進制有 8 個表示數的基本符號,為 0 到 7 八個數字符號。
十進制計數的法則是逢十進一,二進制的計數法則是逢二進一。八進制是什么法則呢?類推就可以了,是逢八進一。
我們來查數。
不過,八進制和十進制數很像,要如何來區分,我們所標記的數,是八進制而非十進制呢?
C 語言里面,給了我們標記八進制數的方法。那就是,以0開頭的數,便是八進制數。所以呢,我們來查吧。
從0開始,首先呢,是 00,然后是01,02,03,04,一直到07 。
八進制的計數法則,是逢八進一。那就是,想要求得 07 的下一位,應該 7 歸 0,并向上進一位,結果為 010 。北京的區號應該就是 010 吧,希望大家有機會去北京玩啊。
010 再往后,依次是 011,012,013,014,一直到 017 。
017的下一位是什么呢?根據逢八進一的法則,應該最低位的7歸零,然后向上進一位,結果為 020 。
再往下,021,022等等的計數,相信大家就能夠明白了。
07的下一個數是010,017的下一個數是020。
027的下一個數是啥呢?相信大家能夠自己推理得到,是 030。
037的下一個數是 040 。
047 的下一個是050 。
057的下一個數是060。
067的下一個數是 070 。
077的下一個數是啥呢?
右邊的7要歸零,并向上進一位。然后呢,左邊的數 7,加上右邊進位而來的1,這導致左邊的7依然要歸零并向上進一位,結果為 0100 。
0117 的下一個數是 0120 。
0137 的下一個數是 0140 。
0777 的下一個數是啥呢?
右邊的數 7 歸零并向上進一位,中間的7和左邊的 7 也是這樣的邏輯,結果為 01000 。
07777 的下一個數是 010000 。
077777 的下一個數是 0100000 。
例子,我已經是舉的足夠多了。我相信,你應該是能夠理解了。如果還不理解,就請自己找別的教材來查吧。
結束語
這一節,應該還算是可以,不難。希望大家能夠學好啊。
專欄導航
本節文章分別屬于《Win32 學習筆記》和《MFC 學習筆記》兩個專欄,故劃分為兩個專欄導航。讀者可以自行選擇前往哪個專欄。
(一)WIn32 專欄導航
上一篇:計算機基礎:二進制基礎05,八進制簡介
回到目錄
下一篇:無
(二)MFC 專欄導航
上一篇:計算機基礎:二進制基礎05,八進制簡介
回到目錄
下一篇:無