Java中8進位制和16進位制的表示方法
由於資料在計算機中的表示,最終以二進位制的形式存在,所以有時候使用二進位制,可以更直觀地解決問題。
但,二進位制數太長了。比如int 型別佔用4個位元組,32位。比如100,用int型別的二進位制數表達將是:
0000 0000 0000 0000 0110 0100
面對這麼長的數進行思考或操作,沒有人會喜歡。因此,C,C++,以及java中 沒有提供在程式碼直接寫二進位制數的方法。
八進位制數的表達方法
如何表達一個八進位制數呢?如果這個數是 876,我們可以斷定它不是八進位制數,因為八進位制數中不可能出7以上的阿拉伯數字。但如果這個數是123、是567,或12345670,那麼它是八進位制數還是10進位制數,都有可能。
所以規定,一個數如果要指明它採用八進位制,必須在它前面加上一個0,如:123是十進位制,但0123則表示採用八進位制。這就是八進位制數的表達方法。
現在,對於同樣一個數,比如是100,我們在程式碼中可以用平常的10進製表達,例如在變數初始化時:
int a = 100;
我們也可以這樣寫:
int a = 0144; //0144是八進位制的100;一個10進位制數如何轉成8進位制,我們後面會學到。
千萬記住,用八進位制表達時,你不能少了最前的那個0。否則計算機會通通當成10進位制。不過,有一個地方使用八進位制數時,卻不能使用加0,那就是我們前面學的用於表達字元的“轉義符”表達法。
十六進位制數的表達方法
如果不使用特殊的書寫形式,16進位制數也會和10進位制相混。隨便一個數:9876,就看不出它是16進位制或10進位制。
16進位制數必須以 0x開頭。比如 0x1表示一個16進位制數。而1則表示一個十進位制。另外如:0xff,0xFF,0X102A,等等。其中的x也也不區分大小寫。(注意:0x中的0是數字0,而不是字母O)
以下是一些用法示例:
int a = 0x100F;
int b = 0x70 + a;
至此,我們學完了所有進位制:10進位制,8進位制,16進位制數的表達方式。最後一點很重要,10進位制數有正負之分,比如12表示正12,而-12表示負 12,;但8進位制和16進位制只能用達無符號的正整數,如果你在程式碼中裡:-078,或者寫:-0xF2,編譯器並不把它當成一個負數。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2983/viewspace-2807469/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- C# 2進位制、8進位制、10進位制、16進位制...各種進位制間的輕鬆轉換C#
- 2進位制_8進位制_16進位制之間快速轉換的技巧.txt
- 10進位制和16進位制互轉的例子
- shell 中轉換16進位制10進位制
- 進位制詳解:二進位制、八進位制和十六進位制
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- printf()將10進位制數安照輸出16進位制,8進位制輸出
- C printf按8進位制、10進位制、16進位制輸出以及高位補0
- 口算 16 進位制轉換 10 進位制,但只適合兩位的 16 進位制
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 10進位制轉8進位制(棧操作)
- 在c語言中輸出8進位制數,16進位制數C語言
- Java 16進位制字串 取反Java字串
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 2/8/16轉10進位制
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 二進位制轉十進位制快速方法
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- 【進位制轉換】十進位制與十六進位制相互轉換方法
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- JavaScript 二進位制、八進位制與十六進位制JavaScript
- (轉)【iOS 開發】二進位制、十進位制、十六進位制相互轉換的方法iOS
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- Qt進位制轉換(十進位制轉十六進位制)QT
- 八進位制,十六進位制和浮點數
- JavaScript十六進位制和八進位制字面量JavaScript
- 1474 十進位制轉m進位制+1475 m進位制轉十進位制
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 二進位制轉十進位制快速轉換方法
- n進位制轉十進位制
- 十進位制轉十六進位制
- 10進位制 VS 2進位制