问题描述
|
假设我的机器字长32位,并且我必须对8个字符的字符串进行排序。
我已经读到如果将字符打包成单词,由于使用对齐的内存访问,因此比较会更快。
因此,在本例中,我们将字符串分成两个4字节的单词,并使用每个字符串的第
一个单词进行比较,如果它们恰好相等,则检查每个字符串的第二个单词。
性能会提高吗?会更快吗?由于编码变得更加复杂,是否有回报?
如果可行,它是否适用于所有语言?
解决方法
答案取决于体系结构,并且编译器通常在优化这些方面做得很好。除非您是针对特定体系结构进行编程,否则需要充分利用速度并真正了解处理器,否则最好让编译器确定对齐方式。