В последнее время я читал много статей о практике программирования, дизайне и т. Д., И мне было любопытно узнать о реальном выигрыше в производительности от реализации умножения в виде сдвига битов.
Пример, о котором я читал, вдохновлял реализациюx * 320 as (x << 8 + x << 6) для часто используемой подпрограммы. </p>
Насколько это актуально в современных компиляторах?Если существует значительный прирост производительности, могут ли компиляторы автоматически не преобразовывать эти «простые умножения» в сдвиги битов по мере необходимости?
Кто-нибудь должен был прибегать к сдвигу битов таким образом в своих проектах, чтобы добиться более быстрого умножения?Какой прирост производительности можно ожидать?