用 int 类型实现 类型 unsinged int 的 右移操作

PHP中文网
リリース: 2016-05-25 17:15:06
オリジナル
1069 人が閲覧しました

php代码

/*这个方法,右移的次数至少大于1。一般来说,0右移 没有什么意义。*/
(($a >> 1) & 0x7fffffff) >> ($n -1) //这里$n 是右移的次数。 $n >= 1
  
/*比如,实现md5加密,一般来说要用到下面的函数,在PHP中可以这样实现:*/
function RotateLeft($a, $n)
{
    return  ($a << $n) | ((($a >> 1) & 0x7fffffff) >> (31 - $n)); //注意运算符的优先级
}
ログイン後にコピー
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート