hi,everyone:
我做优化时候,需要将一个有符号的32位 int 类型的数,做一个饱和操作,变成一个
无符号的8位的数。具体代码如下:
int var;
if(var>255) var = 255; //大于255 就置为255
else if(var < 0) var = 0; //小于0 就置为0
else var = var; // 0- 255 之间就保持不变
请问,有没有专门指令操作的,或者有比较快的方法?
Best Regards!
Louis:
有没有办法确认你的var的值的范围?
Armstrong:
回复 Louis:
Louis
我的一个思路,一次计算4个值
如: int A,B,C,D,AB,ABCD
AB = _spack2(A,B);
CD = _spack2(C,D);
ABCD = _spacku4(AB, CD);
这样ABCD的四个字节就是分别你需要的四个值,用upack命令解包即可。
TI中文支持网

