[PHP-users 28026] Re: 整数の下限

SAISHO Kazuhiro ml @ saisho.info
2006年 1月 4日 (水) 16:27:57 JST


税所です。
『優しい』解説をありがとうございます。(笑)

[PHP-users 28024]
> 伊東です。

> 結局、あなた自身の誤解は解けましたでしょうか?
> その上で、最初の疑問に立ち返って『優しく』解説すると
> 
> 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]の高木様のご指摘だけで十分にご理解頂ける内容かと思います。

宇野さんの説明にもありましたが、
「0 - 2147483648」はビットのシフトや反転の話ではなくて、
「0 - 絶対値」というお話だったのですね。
誤解していたようで失礼致しました。

高木さんから教えて戴いたページはバグ報告のページだということで、
バグだと思い込んで英語をろくに訳さず勝手に解釈してしまいました。
そのためお手数をおかけしました。ゆっくり訳してみます。

ありがとうございました。

--
税所 一弘 <ml @ saisho.info>



PHP-users メーリングリストの案内