php 进制 小数,小数进制转换
二進制數與十進制數如何轉換:
(1) 二進制數—→十進制數
對于較小的二進制數:
對于較大的二進制數:
方法1:各位上的數乘權求和??例如:
(101101)2=1×25+0×24+1×23+1×22+0×21+1×20=45
(1100.1101)2=1×23+1×22+0×21+0×20+1×2-1+1×2-2+0×2-3+1×2-4=12.8125
方法2:任何一個二進制數可轉化成若干個100…0?的數相加的總和??例如:
(101101)2=(100000)2+(1000)2+(100)2+(1)2
而這種100…00形式的二進制數與十進制數有如下關聯:1后有n個0,則這個二進數所對應的十進制數為2n。
所以:(101101)2=(100000)2+(1000)2+(100)2+(1)2=25+23+22+20=45
十進制45.8375轉換為八進制 (轉換為二進制類似)
整數部分除8取余數:
45/8=5--5
5/8=0---5
整數部分為55(注意倒過來)
小數部分乘8取整:
0.8375*8=6.7--6
0.7*8=5.6-----5
0.6*8=4.8-----4
0.8*8=6.4-----6
0.4*8=3.2-----3
0.2*8=1.6-----1
0.6*8=4.8-----4
小數部分是循環小數:0.65463146314631...........
合起來就是55.65463146314631...........
整數部分除以8取余數作為個位,再對商除以8取余數作為十位,...
小數部分乘以8取整數部分作為十分位,在將剩下的小數部分乘以8作為百分位,...
如 17.625
19 % 8 = 3
2 % 8 = 2
整數部分得23
0.625 * 8 = 5
小數部分為0.5
所以最終結果為23.5
總結
以上是生活随笔為你收集整理的php 进制 小数,小数进制转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql providername,c
- 下一篇: php中array怎么用,php arr