プログラムを可能な限り早く実行するために、整数演算を多く利用する理由はなんですか?
「浮動小数点数」は関係しているんですか?
教えてくださいm(__)mお願いします。
現在のCPUで、VBから実行した場合は、
そうともいえないかもしれません。
たとえば、こんな実験を行っている人が居ます。
整数でも浮動小数点でもそれほど差がなさそうです。
http://www.nextftp.com/swlabo/m1_vbnet/hp_experiment/exp007.htm
余談ですが、
昔のCPUは整数演算に比べて浮動小数点演算速度が圧倒的に遅く、
わざわざ浮動小数点演算専用チップ(コプロセッサ)を別装しているPCもありました。
もしかしてご質問の件は、そういうことを仰っていますか?
現在のCPUじゃない場合はどうなんでしょうか?
私も興味があります。よろしければ、わかる方教えてください。
>現在のCPUじゃない場合はどうなんでしょうか?
そうですね。
整数演算優位な処理系では、
最初に10のn乗をかけて整数に直してから計算し、
その後で結果を10のn乗で割って答えを出すようなことをすると、
小数点付きのままの計算よりも速くなる。
なんてことになります。
以前はそういうこともやってました。
'特にCOBOLで。コーディングルールで「FLOAT禁止」とか。
# こちらもネタとして。
単純に、i386のデータシートなどを探して、
「CPUに対する命令と、その実行時間(単位クロックの何倍か)」
をリストにして、それで比較すれば理論的には回答になるのでは。
ツイート | ![]() |