JAVA基礎 八進位制,十六進製制表示

2021-08-25 12:33:35 字數 862 閱讀 8291

[color=indigo]

可以使用八進位制、十六進製制的型別:long, int, short, byte

八進位制表示:以0作為字首,數碼有0,1,2,3,4,5,6,7,逢8進製

如:8(十進位制)-->010(八進位制)

十六進製制表示:以0x作為字首,數碼有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,逢16進製

如:16(十進位制)-->0x10(十六進製制)

二進位制與十進位制的換算:

若有n位(n=1,2,3,4,...)的2進製數,則十進位制值為:

x(n) * 2^(n-1) + x(n-1) * 2^(n-2) + ... + x(3) * 2^2 + x(2) * 2^1 + x(1) * 1

x(n)是指第n位上的數碼

如:1101 --> 1 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 = 13

八進位制與十進位制的換算:

若有n位(n=1,2,3,4,...)的8進製數,則十進位制值為:

x(n) * 8^(n-1) + x(n-1) * 8^(n-2) + ... + x(3) * 8^2 + x(2) * 8^1 + x(1) * 1

x(n)是指第n位上的數碼

如:0123 --> 1 * 8^2 + 2 * 8 + 3 = 83

十六進製制與十進位制的換算:

若有n位(n=1,2,3,4,...)的16進製制數,則十進位制值為:

x(n)*16^(n-1)+x(n-1)*16^(n-2)+...+x(3)*16^2+x(2)*16^1+x(1)*1

x(n)是指第n位上的數碼

如:0x123 --> 1 * 16^2 + 2 * 16 + 3 = 291[/color]

八進位制 十六進製制,補碼

為什麼需要八進位制和十六進製制?程式設計中,我們常用的還是10進製 必竟c c 是高階語言。比如 int a 100,b 99 不過,由於資料在計算機中的表示,最終以二進位制的形式存在,所以有時候使用二進位制,可以更直觀地解決問題。但,二進位制數太長了。比如int 型別占用4個位元組,32位。比如1...

十六進製制轉八進位制

時間限制 1.0s 記憶體限制 512.0mb 問題描述 給定n個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來n行,每行乙個由0 9 大寫字母a f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。輸出格式 輸...

十六進製制轉八進位制

問題描述 給定n 個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來 n行,每行乙個由 0 9 大寫字母 a f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過 100000 輸出格式 輸出n 行,每行為輸入對應的八進位制正整...