看板 Programming 關於我們 聯絡資訊
特殊需求,目前以 C 寫了一連串的 math library. 日後可能移植至其他 沒有 math library 之程式語言, 不以 inline asm 實作,目前已完成大多, 然而,在做到三角函數時,大量使用 fmod。 問題是 fmod、ceil、floor ,在考慮完整正確性後, 本身速度就不可能打過 library, 找中文 wiki ieee754 後,裡面有一段註記如此 ---- 標準運算 下述函數必須提供: 加減乘除 Add, subtract, multiply, divide 平方根 Square root 浮點餘數. 返回值 x-(round(x/y)*y). 近似到最近的整數. 如果恰好在兩個相鄰整數之間,則近似到偶數. 比較運算. IEEE754定義了特殊情況: -inf = -inf, inf = inf and x ≠ NaN for any x (including NaN ---- 納悶的是,一些看似簡單,要快不易的 fabs, fmod, ceil, floor, getsign 等 function,是否一般在任何程式語言裡 (包含組語),均必包含之? 謝謝各位先進之不吝解惑,感謝。 -- If there is no tomorrow, I want to see u last time. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.78.41
akasan:有些CPU的組語連浮點運算都沒有勒 114.44.158.31 12/01 00:39
EdisonX:謝謝a大.或該進一步請教.在有浮點數運算之 180.177.78.41 12/01 00:50
EdisonX:CPU,是否組語都包含這些指令? (沒floating 180.177.78.41 12/01 00:51
EdisonX:可能只能用組語做大數吧 XD) 180.177.78.41 12/01 00:51
akasan:喔 你問的太大了 答案當然是:否 114.44.158.31 12/01 01:14
EdisonX:謝謝回答,再次感謝 :) 180.177.78.41 12/01 10:10
WPC001:有些CPU不支援, 但完整的lib會包出來給你 114.25.132.200 12/01 21:07
WPC001:有些CPU連float都不支援... 114.25.132.200 12/01 21:08