回覆列表
-
1 # 使用者8868266884733
-
2 # 你永遠追不上的巨人
十六進位制裡的字母只有A到F六個數值,H即Hex其實只是表示它作為字首或字尾的一串數值是十六進位制的,起一個識別的作用。在程式語言中大多采用0x作為字首。
十六進位制裡的字母只有A到F六個數值,H即Hex其實只是表示它作為字首或字尾的一串數值是十六進位制的,起一個識別的作用。在程式語言中大多采用0x作為字首。
16進位制 也就是基本數字由0123456789變成了 0123456789ABCDEF 這裡的H是16進位制的一個縮寫而已 H:十六進位制(英文名稱:Hexadecimal),是計算機中資料的一種表示方法。同我們日常生活中的表示法不一樣。它由0-9,A-F組成,字母不區分大小寫。與10進位制的對應關係是:0-9對應0-9;A-F對應10-15;N進位制的數可以用0~(N-1)的數表示,超過9的用字母A-F。 16進位制的20表示成10進位制就是:2×16¹+0×16º=32 10進位制的32表示成16進位制就是:20 十進位制數可以轉換成十六進位制數的方法是:十進位制數的整數部分“除以16取餘”,十進位制數的小數部分“乘16取整”,進行轉換。 比如說十進位制的0.1轉換成八進位制為0.0631463146314631。就是0.1乘以8=0.8,不足1不取整,0.8乘以8=6.4,取整數6, 0.4乘以8=3.2,取整數3,依次下算。 程式設計中,我們常用的還是10進位制.畢竟C/C++是高階語言。 比如: int a = 100,b = 99; 不過,由於資料在計算機中的表示,最終以二進位制的形式存在,所以有時候使用二進位制,可以更直觀地解決問題。但二進位制數太長了。比如int 型別佔用4個位元組,32位。比如100,用int型別的二進位制數表達將是: 0000 0000 0000 0000 0110 0100 面對這麼長的數進行思考或操作,沒有人會喜歡。因此,C,C++ 沒有提供在程式碼直接寫二進位制數的方法。用16進位制或8進位制可以解決這個問題。因為,進位制越大,數的表達長度也就越短。不過,為什麼偏偏是16或8進位制,而不其它的,諸如9或20進位制呢?2、8、16,分別是2的1次方、3次方、4次方。這一點使得三種進位制之間可以非常直接地互相轉換。8進位制或16進位制縮短了二進位制數,但保持了二進位制數的表達特點。