Maison  >  Article  >  développement back-end  >  PHP取进制余数

PHP取进制余数

WBOY
WBOYoriginal
2016-07-25 09:08:21957parcourir
我想知道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
复制代码


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:wordpress中让主题支持菜单导航 Article suivant:统计重复的值