1.所有數(shù)字在計算機中都以二進制存在
二進制到十進制的轉(zhuǎn)換
二進制最高位叫符號位,符號位為1表示負數(shù),符號位為0表示正數(shù)
如何表示一個二進制數(shù)的反碼和補碼?
對于正數(shù):三碼合一,反碼和補碼都等于原碼
對于負數(shù)
反碼:將原碼除符號位,其他位取反
補碼:將反碼加1
計算機中都是以補碼的方式來存儲的
可以從補碼來反推原碼:-69
十進制轉(zhuǎn)換為二進制:除2取余的逆。就像用輾轉(zhuǎn)相除法求最大公倍數(shù)/最小公約數(shù)一樣
比如13對于2,商6余1,再變成6除以2商3余0,寫下來101100000,然后再反著讀就是這個數(shù)的二進制000001101
各個進制之間如何轉(zhuǎn)換呢?
可以通過二進制,然后再互相轉(zhuǎn)
二進制轉(zhuǎn)換為八進制:從右至左,每三位一算
二進制轉(zhuǎn)換為十六進制:從右至左,每四位一算
其他進制轉(zhuǎn)換為二進制====
八進制轉(zhuǎn)換為二進制,每個數(shù)拆成三位二進制的形式再拼到一起
十六進制轉(zhuǎn)換為二進制,每個數(shù)拆成四位二進制的形式再拼到一起
Java中,轉(zhuǎn)化為幾進制對應的有不同的方法
將i轉(zhuǎn)換為二進制:toBinaryString(int i)
十六進制:toHexString(int i)
八進制:toQctalString(int i)