[英]Bus error in ARMv7 assembly function to find maximum element of array
[英]assembly armv7 neon power function
我是匯編程序新手。 我想實現冪函數,但是我沒有exp或log函數。 我有類似a^b
而a是整數,b是浮點數。
如果b是自然數,我只能想出一些東西。 就像一個將a與a乘以b的循環。
是否有類似的東西,或者有人知道如何實現它。
據我了解,您問過如何使用手臂霓虹燈實現pow
功能。
最有效的pow
為整數執行a
和b
是多發性a
由a
在一個循環abs(b)
次。 對於負數b
將1.0除以循環結果(請參見此處 )。
如果您有exp
和log
實現,那么可以使用等式pow(x,m)= exp(m * log(x))來實現pow
(請參閱此處 )。
您提到您沒有exp
和log
功能。
因此,如果您找到具有exp
和log
函數的數學庫,則可以為double a
和b
實現pow
。
有一些用於arm的數學庫,帶有pow
實現。 例如,參見math-neon 。
另外,在簡單ARM NEON優化的sin,cos,log和exp庫中,純log
和exp
實現(在C中,使用neon內部函數)。 您可以從庫中獲取代碼並將其重寫為arm程序集。 只需問律師如何滿足圖書館許可。 您只需要其中的兩個功能。 內部代碼可以很容易地移植到asm。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.