作者everydate (月)
看板Programming
標題[問題]請問浮點數寫法和效率有差嗎?
時間Sun Dec 20 22:43:24 2009
請教大家兩個浮點數運算的寫法
(1) 若要把一個數乘上 1.5 倍
//假設有兩個 float, fValue1, fValue2;
fValue2 = fValue1 * 1.5;
和
fValue2 = fValue1 * 3 / 2;
請問這兩個寫法有效率上的差別嗎?
(2) 如果要把一個數字除以 3
fValue2 = fValue1 / 3;
和
fValue2 = fValue / 3.0;
這兩個寫法處理上有差嗎?還是只是為了讓別人看懂才寫成 3.0 ?
謝謝 ^^
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.70.177.224
1F:→ WPC001:編譯器夠聰明的話, 開啟優化功能後, 沒差 123.195.10.48 12/20 23:17
2F:→ MOONRAKER:(2)完全就是為了讓人看懂。 59.120.168.228 12/21 00:26
4F:→ buganini:也許可以順便防止奇怪的編譯器的錯誤實做 140.123.221.65 12/21 07:19
5F:→ meltice:compiler應該很聰明 *1.5會翻成*3 >>1吧 115.83.20.184 12/21 23:01
6F:推 AJE:fvalue1是float,那與它結合的運算不是至少會 59.124.165.83 12/22 12:31
7F:→ AJE:用float去處理嗎 59.124.165.83 12/22 12:31
8F:→ everydate:謝謝大家^^ 219.70.177.224 12/22 21:02
9F:推 Huangs:對 float 作 >> 1 運算有義意嗎? @@ 140.112.30.84 12/24 17:53
10F:推 FlyinDeath:效率上沒有差,因為通通都要轉換成 114.45.62.48 12/24 20:47
11F:→ FlyinDeath:float然後constant folding處理 114.45.62.48 12/24 20:48
12F:→ FlyinDeath:當然,型別指定得清楚一點會比較好 114.45.62.48 12/24 20:48