[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[WitchTech 00364] Re: 演算速度
- Subject: [WitchTech 00364] Re: 演算速度
- From: narunaru@123mail.net
- Date: Sat, 19 Aug 2000 01:04:51 +0900 (JST)
# この話は comp.lang.c FAQ に出ていたような気がします ...
> <200008181114.UAA12876@planar.cosmonet.org>
> From: cdr@cosmonet.org
> Date: Fri, 18 August 2000 20:18:24 +0900
> 割り算がシフトにならないのは、被除数がマイナスのときに小数点以下を
> 切り捨てるためだと思うのですが、割り算の切り捨て/切り上げの処理は
> C言語の規格で決まっているのでしょうか。 それとも処理系依存でしょうか。
> # 今K&Rが手元に無いもので...
# 厳密には K&R 見ても仕方ないです。付録 A も説明に過ぎないので。
ISO 9899-1990 なら 6.3.5 Multiplicative Operators が該当個所と思います。
簡単に書くとオペランドが両方とも正なら切り捨て、どちらかが負なら
(a/b) * b + a % b = a が要求されて、それ以外は処理系定義です。
# さがせば、C89 のドラフトは落ちてると思いますよ。前に書いたように
rationale は Web で見れますし。自分でドキュメントを読んだほうが良いです。
(そのほうが、楽しいですよ ...)
--
なるなる
ML Archives