解释一下取最小值算法

#define s32 int
inline s32 s32_min ( s32 a, s32 b)
{
s32 c = (a - b) >> 31;
return (a & c) + (b & ~c);
}
[145 byte] By [tanye_chen-建] at [2008-1-9]