首頁  >  文章  >  後端開發  >  PHP取進制餘數

PHP取進制餘數

WBOY
WBOY原創
2016-07-25 09:08:21955瀏覽
我想知道21712341byte在K位上是多少,M位上、G位呢?这相当于进制转换的问题。只不过现在要转换的进制是1024.                               
                   
                               
                                               
                                       
            
  1. //取进制位上的数值
  2. function getRemainder($num, $bin, $pos, &$result = 0){
  3. //author        lianq.net
  4. //$num        数值,十进制
  5. //$bin        要转换的进制
  6. //$pos        位数
  7.         $real_len        = log($num, $bin);//对数,求原值长度
  8.         $floor_len        = floor($real_len);//舍去求整
  9.         $base                = pow($bin, $pos-1);//基数
  10.         $divisor        = pow($bin,$pos);//除数
  11.         if($num >= $divisor){
  12.                 $new_num        = $num % pow($bin, $floor_len);
  13.                 getRemainder($new_num, $bin, $pos, $result);
  14.         }else{
  15.                 $result = floor($num / $base);
  16.         }
  17. return $result;
  18. }
  19. //比如,数值16转换为9进制时,它的第一位上的数值是多少?
  20. $a = getRemainder(16,9, 1);
  21. echo $a;//输出7
复制代码


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn