八進位制和十六進位制的意義是什麼,計算機中使用八進位制和十六進位制有什麼意義

2021-03-19 00:57:53 字數 5246 閱讀 8221

1樓:

二進位制書寫和閱讀都太不方便了,就用十六進位制、八進位制來簡化。比如101101101011011101,它的十六進位制是2dadd、八進位制是555335。看看往機器裡輸入時哪個方便?

不管用什麼進位制,機器裡都是二進位制,只是螢幕顯示不一樣而已!所以說,進位制轉換隻是轉換怎麼顯示,機子裡資料根本就沒有改變!八進位制、十六進位制是從二進位制派生出來的,它沒有改變二進位制的本來面目,程式設計師們用起來很方便,又不失他們關心二進位制每位情況的心思。

8是2的3次方,16是2的4次方,所以把一長串二進位制資料變成八進位制或十六進位制是非常方便的:從右至左每3位一隔,最左邊不足時用0在前面補齊,再用0~7八個符號把每一組的數對應寫下來就是了;十六進位制則是每4位一隔,其餘辦法一樣。要變回去就更方便了,把每個符號對應的數按順序用0、1寫下來就是了!

只有十進位制,人類偏愛它,但與二進位制沒有簡單關係,轉換起來麻煩一些。可這沒有辦法,只能忍受了。另:

正因為人是用十進位制記數的,所以電腦軟體幾乎都是圍繞十進位制設計,十進位制變為其他進位制都有現成的函式、子程式之類的東西,而其他進位制間要變換就得靠自己了。所以把其他進位制轉換為十進位制的方法掌握好對程式設計很有好處;比如要把十六進位制轉換為二進位制,直接程式設計難一些,但你把它轉換成進位制,然後呼叫個現成的功能就成二進位制了……當然這裡指的是程式設計,要手工操作那太簡單了——如前所述。

2樓:95郭逗比

數制定義:用一組固定的數字和一套統一的規則來表示數目的方法稱為數制。數制有進位計數制與非進位計數制之分,目前一般使用進位計數制。

計算機中常使用二進位制、十進位制、八進位制、十六進位制等。

十進位制數的數碼為0、1、2、3、4、5、6、7、8、9共十個,進數規則為逢十進一,借一當十。

二進位制數的數碼為0、1共兩個,進數規則為逢二進一,借一當二。

八進位制數的數碼為0、1、2、3、4、5、6、7共八個,進數規則為逢八進一,借一當八。

十六進位制數的數碼為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共十六個,其中數碼a、b、c、d、e、f分別代表十進位制數中的10、11、12、13、14、15,進數規則為逢十六進一,借一當十六。

8 1000 10 8 17 10001 21 11

十進位制數換算成二進位制、八進位制、十六進位制數

分整數部分的換算和小數部分的換算。

(1)整數部分的換算

將已知的十進位制數的整數部分反覆除以n(n為進位制數,取值為2、8、16,分別表示二進位制、八進位制和十六進位制),直到商是0為止,並將每次相除之後所得的餘數按次序記下來,第一次相除所得的餘數k0為n進位制數的最低位,最後一次相除所得餘數kn-1為n進位制數的最高位。排列次序為kn-1kn-2 ××k1k0的數就是換算後得到的n進位制數。

(2)小數部分的換算

將已知的十進位制數的純小數(不包括乘後所得整數部分)反覆乘以n,直到乘積的小數部分為0或小數點後的位數達到精度要求為止。第一次乘n所得的整數部分為k-1,最後一次乘n所得的整數部分為k-m,則所得n進位制小數部分0.k-1 k-2 ××k-m。

二進位制數與八進位制數的相互換算

二進位制數換算成八進位制數的方法是:以小數點為基準,整數部分從右向左,三位一組,最高位不足三位時,左邊添0補足三位;小數部分從左向右,三位一組,最低位不足三位時,右邊添0補足三位。然後將每組的三位二進位制數用相應的八進位制數表示,即得到八進位制數。

八進位制數換算成二進位制數:將每一位八進位制數用三位對應的二進位制數表示。

二進位制數與十六進位制數的相互換算

以小數點為基準,整數部分:從右向左,四位一組,最高位不足四位時,左邊添0補足四位;小數部分:從左向右,四位一組,最低位不足四位時,右邊添0補足四位。

然後將每組的四位二進位制數用相應的十六進位制數表示,即可得到十六進位制數。

十六進位制數換算成二進位制數:將每一位十六進位制數用四位相應的二進位制數表示。

計算機中使用八進位制和十六進位制有什麼意義

3樓:匿名使用者

二進位制數是計算機進行計算的基本進位制,它能方便地通過0和1兩種狀態表示各種數值,這使得邏輯電路的設計簡潔。八進位制和十六進位制對二進位制的轉換十分方便,同時又能將較大的二進位制數以較短的字數來表示,便於人們書寫和記錄,所以使用八進位制和十六進位制來表達二進位制數。

八進位制和十六進位制有什麼用?

4樓:匿名使用者

就是為了簡潔。例如一個16位的二進位制數1010010111001011,無論寫起來還是讀起來,很費事兒,還容易出錯,寫成十六進位制數a5cd,就方便多了,也不容易出錯。

5樓:匿名使用者

八進位制,

octal,縮寫oct或o,一種以8為基數的計數法,採用0,1,2,3,4,5,6,7八個數字,逢八進1。一些程式語言中常常以數字0開始表明該數字是八進位制。八進位制的數和二進位制數可以按位對應(八進位制一位對應二進位制三位),因此常應用在計算機語言中。

十六進位制(英文名稱:hexadecimal),用於計算機領域的一種重要的數制。對計算機理論的描述,計算機硬體電路的設計都是很有益的。

比如邏輯電路設計中,既要考慮功能的完備,還要考慮用儘可能少的硬體,十六進位制就能起到一些理論分析的作用。比如四位二進位制電路,最多就是十六種狀態,也就是一種十六進位制形式,只有這十六種狀態都被用上了或者儘可能多的被用上,硬體資源才發揮了儘可能大的作用。

十六進位制更簡短,因為換算的時候一位16進位制數可以頂4位2進位制數。

6樓:黎約全球

二進位制數書寫冗長、易錯、難記,而十進位制數與二進位制數之間的轉換過程複雜,所以一般用十六進位制數或八進位制數作為二進位制數的縮寫。

進位計數制

按進位的原則進行的計數方法稱為進位計數制。

在採用進位計數的數字系統中,如果用r個基本符號(例如:0,1,2, ,r-1)表示數值,則稱其為基r數制(radix-r number system),r成為該數制的基(radix)。如日常生活中常用的十進位制數,就是r=10,即基本符號為0,1,2, ,9。

如取r=2,即基本符號為0,1,則為二進位制數。

對於不同的數制,它們的共同特點是:

1)每一種數制都有固定的符號集:如十進位制數制,其符號有十個:0,1,2, ,9,二進位制數制,其符號有兩個:0和1。

2)其次都是用位置表示法:即處於不同位置的數符所代表的值不同,與他所在位置的權值有關。

例如:十進位制可表示為:

5555.555 = 5 103 + 5 102 + 5 101 + 5 100 + 5 10-1 + 5 10-2 + 5 10-3

可以看出,各種進位計數制中的權的值恰好是基數的某次冪。因此,對任何一種進位計數製表示的數都可以寫出按其權的多項式之和,任意一個r進位制數n可表示為:

式中的di為該數制採用的基本數符,ri是位權(權),r是基數,表示不同的進位制數;m為整數部分的位數,k為小數部分的位數。

"位權"和"基數"是進位計數制中的兩個要素。

在十進位計數制中,是根據"逢十進一"的原則進行計數的。一般地,在基數為r的進位計數制中,是根據"逢r進一"或"逢基進一"的原則進行計數的。

在微機中,常用的是二進位制、八進位制和十六進位制。其中,二進位制用得最為廣泛。

表2所示的是計算機中常用的幾種進位數制。

二進位制、八進位制、十六進位制的應用對我們來說有什麼現實意義?

7樓:匿名使用者

2進位制可以大大簡化晶片元件設計(所以現在所有自動化裝置的運算元件都是2進位制計算的,包括電子錶,遙控器一直到手機數碼相機和電腦), 但是2進位制數字寫起來太長了,比如你要表示一個一千多的數字,需要超過10位,因此為了便於記憶和閱讀, 通常 3-4位(現在已經幾乎沒有用3位了)並一起,因此就形成了8進位制和16進位制.

因為現在幾乎沒有用3位來記2進位制數了,所以現在來說在這個領域有用的進位制是: 2,10,16 這3種. 8進位制只在教科書裡有,實際使用中不會使用到.

2方便電路設計, 10是給人看的, 16是2的方便閱讀的記錄方式

8樓:匿名使用者

計算機內部採用二進位制的原因 (1)技術實現簡單,計算機是由邏輯電路組成,邏輯電路通常只有兩個狀態,開關的接通與斷開,這兩種狀態正好可以用「1」和「0」表示。

(2)簡化運算規則:兩個二進位制數和、積運算組合各有三種,運算規則簡單,有利於簡化計算機內部結構,提高運算速度。

(3)適合邏輯運算:邏輯代數是邏輯運算的理論依據,二進位制只有兩個數碼,正好與邏輯代數中的「真」和「假」相吻合。

(4)易於進行轉換,二進位制與十進位制數易於互相轉換。

9樓:匿名使用者

當然不能,因為計算機的機器語言現在只能用二進位制來實現。至於用八進位制和十六進位制,是因為它們與二進位制之間的轉換比較方便~也會使二進位制串更加好看

10樓:匿名使用者

不能,因為根據計算機的內部原理,它只能讀懂2進位制檔案,傳輸的時候再用16進位制或8進位制也比10進位制更方便

11樓:匿名使用者

不同情況情況不同對待 你不能說那種方法好到不行 也不能說那種爛到可以 總有合適的

16進位制有什麼意義啊?

12樓:月似當時

計算機中資料都是用二進位制儲存,而八進位制與十六進位制可以比十進位制更方便的表示二進位制。

16進位制即逢16進1,每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共16個大小不同的數。16進位制轉換即16進位制與其他不同進位制之間的換算轉換,常見如2進位制、8進位制等進位制。

十六進位制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方。

擴充套件資料

十六進位制轉義序列:如 \x1abf4 ,可以使用任意多的十六進位制數字,直至不是十六進位制數字為止;

16位的通用字元名(universe-character name):\u後面必須跟4個十六進位制數字(不足四位前面用零補齊),表示unicode中在0至0xffff之內的碼位;

32位的通用字元名:\u後面必須跟8個十六進位制數字(不足八位前面用零補齊),表示unicode中所有可能的碼位(除0xd800到0xdfff之外)。

13樓:匿名使用者

前提是:計算機用了二進位制,人習慣用十進位制。

那麼程式設計師經常需要在這兩個進位制間準換。

我隨便寫一串十進位制數:3254353 一般人是無法心算得出其二進位制數的

隨便寫一串二進位制數:11001010100 一般人也是無法快速得出十進位制數的

如果我程式設計的時候,恰當的地方用16進位制,尤其是涉及位運算的地方比如0x34

轉十進位制:16*3 +4 = 82 。努力一下,心算還是可以的轉二進位制:0011 0100 。因為存在一對四的關係,所以隨手就能寫出來

C語言八進位制十六進位制真值問題

關於八進位制和十六進位制的正負性,有如下幾種情況 1.如果直接使用,都認為是正值,比如 printf d 2 0x8008 輸出 65552 2.如果將其賦值給有符號變數,則 化為二進位制後 最高位為1表示負數,為0表示正。比如 short int y 0x8008 printf d y 輸出 32...

二進位制轉換十進位制,八進位制,十六進位制

在數制中,還有一個規則,這就是,n進位制必須是逢n進一。對於多位數,處在某一位上的 l 所表示的數值的大小,稱為該位的位權。例如十進位制第2位的位權為10,第3位的位權為100 而二進位制第2位的位權為2,第3位的位權為4,對於 n進位制數,整數部分第 i位的位權為ni 1,而小數部分第j位的位權為...

二進位制字尾是B,十六進位制是H八進位制字母表示?字尾字母是什麼

八進位制是字母o 十進位制 省略不寫,八進位制字尾字母是o,十進位制字尾是d 問一個16進位制的問題,0x12表示12h,這個h是個什麼東西?數字後面帶有h就是指這個數是十六進位制數,如2020h或 2020 16 這裡的16是右下角標 同理,二進位制數的字尾字母為b,八進位制的字尾字母為o,十進位...