Arm 如何处理溢出?
我想知道霓虹灯如何处理溢出。例如:Arm 如何处理溢出?,arm,overflow,neon,Arm,Overflow,Neon,我想知道霓虹灯如何处理溢出。例如: uint8x8_t vadd_u8 (uint8x8_t, uint8x8_t) 据我所知,这是2个向量的加法(每个向量有8个无符号字节元素)。假设两个向量的所有值都是255 在这种情况下,我们应该期待什么结果?一个8元素向量(510,…510)或其他什么?8位元素只能有0到255之间的值。它不能包含510 vadd_u8将环绕=>255+255=510%256=254 vqadd_u8将饱和=>255+255=min(510255)=255。8位元素只能具
uint8x8_t vadd_u8 (uint8x8_t, uint8x8_t)
据我所知,这是2个向量的加法(每个向量有8个无符号字节元素)。假设两个向量的所有值都是255
在这种情况下,我们应该期待什么结果?一个8元素向量(510,…510)或其他什么?8位元素只能有0到255之间的值。它不能包含510 vadd_u8将环绕=>255+255=510%256=254
vqadd_u8将饱和=>255+255=min(510255)=255。8位元素只能具有0到255之间的值。它不能包含510 vadd_u8将环绕=>255+255=510%256=254
vqadd_u8将饱和=>255+255=min(510,255)=255。那么我们如何使用Neon内部函数添加2个uint8x8矢量?另外,没有任何方法允许添加2个给出uint16x8结果的uint8x8向量。参考:
vaddl_u8
将添加两个uint8x8
并返回一个uint16x8
。那么如何使用Neon内部函数添加两个uint8x8向量?另外,没有任何方法允许添加2个给出uint16x8结果的uint8x8向量。参考:vaddl_u8
将添加两个uint8x8
并返回一个uint16x8
。