例如,如果我有一个64位变量并在其中存储两个32位数据项,也许是为了SIMD处理的目的,是否有一个名称来描述这两个数据项的逻辑耦合?
我的一位同事建议"混合耦合",这是一个广泛使用的术语?
澄清一下:我们追求的是一个比特定实现更高层次的概念.比方说,例如,在类似C语言中,我们有这两种结构:
struct CoupledData { uint64 x_and_y; // x is stored in the top 4 bytes, y in the bottom 4 } struct UncoupledData { uint32 x; uint32 y; }
无论这样做的原因如何,在CoupledData中的x和y数据成员之间存在隐式耦合,而UncoupledData中不存在这种耦合.是否有一个术语描述了x和y之间的这种耦合?
我一直称它为"包装".您将R,G,B和alpha字节打包为long.
pixel=(a<<24)+(r<<16)+(g<<8)+b;
以下是SIMD指令的参考资料(来自MMX/SSE):
ADDPS:添加打包的单精度FP值
CMPccPS:压缩单精度FP比较