在LabVIEW中使用Rounding to nearest 的功能,是所謂的IEEE854 (IEEE 754) 的近期捨入模式,下面有一個算法可以展示其中的不同:
近期舍入模式:Round(0.5) = 0 ; Round(1.5) = 2; Round(2.5) = 2 ;
四舍五入模式:Round(0.5) = 1; Round(1.5) = 2; Round(2.5) = 3 ;
從上面的例子可以看出,在近期捨入模式中,又可以用口絕 四捨五入奇進位 來表達,也就是進位的位數前的數值若是基數才做進位,偶數就不進位。
這是因為在四捨五入的模式下 :
Round(0.1)= 0 、Round(0.2)= 0 、Round(0.3)= 0 、Round(0.4)= 0 、Round(0.5)= 1、Round(0.6)= 1、Round(0.7)= 1、Round(0.8)= 1 、Round(0.9)= 1
可以發現答案為 0 總共會有4次,而發生 1 的答案會有5次,這在隨機中並不是公平的現象;所以才會在基偶數在Rounding中有不同的答案,讓隨機發生的機率各半。
所以再回到LabVIEW中的 Rounding to nearest 註解來看,其實可以看到他的範例就有提到,如果輸入1.5、2.5的答案都會是2。
參考資料:
如果覺得文章有幫助,請不要吝嗇按下側邊的廣告唷~ 謝謝~
學習相關LabVIEW文章:
程式分享相關LabVIEW文章:
考取LabVIEW證照相關:
文章標籤
全站熱搜