进制转换公式
為什么80%的碼農都做不了架構師?>>> ??
任意進制到十進制的轉換原理:
????* 系數:就是每一位上的數據。
????* 基數:X進制,基數就是X。
????* 權:在右邊,從0開始編號,對應位上的編號即為該位的權。
????* 結果:把系數*基數的權次冪相加即可。
例:
十進制到十進制:
12345 = 10000 + 2000 + 300 + 40 + 5
????????? ?= 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
二進制轉十進制:(0b是jdk1.7版本中表示二進制的寫法,所以忽略0b)
0b100 = 1*2^2 + 0*2^1 + 0*2^0 = 4
八進制轉十進制:(開頭的0忽略)
0100 = 1*8^2 + 0*8^1 + 0*8^0 = 64
十六進制轉十進制:(開頭的0x一樣的道理,也忽略)
0x100 = 1*16^2 + 0*16^1 + 0*16^0 = 256
十進制到任意進制的轉換原理:
????* 除積倒取余
例:
十進制轉換成十進制(任意進制):
12345/10 = 1234余5
????????????????? ?1234/10 = 123余4
????????????????? ? ? ? ? ? ? ? ? ? ?123/10 = 12余3
?????????????????????????????????????????????????????12/10 = 1余2
????????????????????????????????????????????????????????????????? ?1/10 = 0余1??
十進制轉換成二進制:60=11110
60/2 = 30余0
????????? ? 30/2 = 15余0
? ? ? ? ? ? ????????? ? 15/2 = 7余1
????????????????????????????????? ? 7/2 = 3余1
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3/2 = 1余1
????????????????????????????????????????????????????? ? ?1/2 = 0余1?
十進制轉換成八進制:60=74
60/8 = 7余4
? ? ? ? ? ?7/8 = 0余7
十進制轉換成十六進制:60=3c
60/16 = 3 余12 寫成c(十六進制中沒有12這個數字,a表示10,b表示11,所以12用c代替)
????????????? 3/16 = 0余3
轉載于:https://my.oschina.net/gooiem/blog/680244
總結
- 上一篇: 【转】解决wine中文乱码的问题
- 下一篇: PM2中无法开启ES6的解决方案