public class HelloWorld {
public static void main(String []args) {
int a=-0b11;//0b開(kāi)頭為二進(jìn)制數(shù)
int b=-011;//0開(kāi)頭為八進(jìn)制數(shù)
int c=-11;//默認(rèn)為十進(jìn)制數(shù)
int d=-0x11;//0x開(kāi)頭為十六進(jìn)制數(shù)
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);//以上默認(rèn)輸出十進(jìn)制
System.out.println(Integer.toBinaryString(d));// 二進(jìn)制
System.out.println(Integer.toOctalString(d));//八進(jìn)制
System.out.println(Integer.toHexString(d));//十六進(jìn)制
//注意:負(fù)數(shù)在非十進(jìn)制時(shí)輸出為補(bǔ)碼
}
}
運(yùn)行結(jié)果:
然后簡(jiǎn)單總結(jié)一下原碼滨攻、反碼和補(bǔ)碼:
正數(shù):
原碼、反碼和補(bǔ)碼都相同
負(fù)數(shù):
原碼:第一位為符號(hào)位蓝翰,后面是數(shù)字位
反碼:符號(hào)位不變光绕,其它各位取反
補(bǔ)碼:反碼+1(相當(dāng)于符號(hào)位不變,數(shù)字位取反+1)