Bit Manipulation Instructions (BMI) - наборы инструкций, используемые в процессорах Intel и AMD для ускорения операций, связанных с манипулированием битами. BMI не являются SIMD-инструкциями и работают только с универсальными регистрами процессоров.
Операции манипулирования битами чаще всего используется приложениями, предназначенными для низкоуровневого управления устройствами, обнаружения и исправления ошибок, оптимизации, сжатия и шифрования данных. Использование BMI программами значительно ускоряет эти операции (иногда в несколько раз), однако, код программ становится более сложным для написания программистами.
Наборы инструкций BMI в процессорах Intel и AMD существенно отличаются.
В процессорах Intel используются пакеты BMI1 и BMI2 (дополнение к BMI1).
В процессорах AMD, кроме BMI1, используются инструкции ABM (Advanced Bit Manipulation), которые вошли в состав пакета SSE4a (в Intel эти инструкции также присутствуют, но реализованы как часть SSE4.2 и BMI1). Кроме того, в процессорах АМД используется набор инструкций TBM (Trailing Bit Manipulation), являющийся дополнением к BMI1.

Bit Manipulation Instructions
(BMI)
01.06.2017 г.