ARM Neon iOS 浮点转换
Posted
技术标签:
【中文标题】ARM Neon iOS 浮点转换【英文标题】:ARM Neon iOS floating-point conversion 【发布时间】:2014-10-17 14:18:36 【问题描述】:当我在 iPad Air (ios 7.1) 上执行此代码时
#include <arm_neon.h>
static inline void TestArmConversion()
float x[2] = 1.5, 2.6 ;
int32_t z[2];
vst1_s32(z, vcvt_f32_s32(vld1_f32(x)));
for (int k = 0; k < 2; k++)
printf("z[%d] = %d\n", k, z[k]);
...我得到以下结果:
z[0] = 1316945920
z[1] = 1317031117
我本来希望得到
z[0] = 1 z[1] = 2
我做错了什么?
【问题讨论】:
【参考方案1】:你很接近!你只是混淆了转换。请改用vcvt_s32_f32(float32x2_t)
。
【讨论】:
好的,谢谢,这解决了我的问题! :-) 预计编译器会发出类型错误。以上是关于ARM Neon iOS 浮点转换的主要内容,如果未能解决你的问题,请参考以下文章