[PHP-users 28024] Re: 整数の下限
Yusuke ITO
ito_yusuke @ white.livedoor.com
2006年 1月 4日 (水) 15:49:35 JST
伊東です。
丁寧な解説、ありがとうございます。> 税所様
#大人げない『逆ギレ』という言葉は不要でしたね。
#申し訳ありませんでした。
--SAISHO Kazuhiro<ml @ saisho.info> wrote:
> 税所です。
> どうも誤解があるようですね。
(略)
> 32ビットの先頭のビットを「1」から「0」に変えたら、
> 「n - 2147483648」になりませんか?
正直かなり意表を突かれました、、
#久々に見たので
PHPの内部での負数の扱い(2の補数表現)に関しては宇野様のメール以上の補足は不要かと思いますが
結局、あなた自身の誤解は解けましたでしょうか?
その上で、最初の疑問に立ち返って『優しく』解説すると
var_dump (-2147483647 - 1); # int(-2147483648)
→ -2147483647 - 1
→ (0) - (2147483647) - (1)
→ int(0) - int(2147483647) - int(1) #内部での演算
→ int(-2147483648)
var_dump (-2147483648 ); # float(-2147483648)
→ -2147483648
→ (0) - (2147483648)
→ int(0) - float(2147483648) #内部での演算
→ float(-2147483648)
となる、これは[PHP-users 28010]の高木様のご指摘だけで十分にご理解頂ける内容かと思います。
--
伊東 祐介
ito_yusuke @ white.livedoor.com
-----------------------------------------------
得するキャンペーンやプレゼント情報を是非ご覧下さい!
livedoor 懸賞
http://present.livedoor.com/
PHP-users メーリングリストの案内