Битовый тест - Bit Test

В BT язык ассемблера x86 инструкция означает Битовый тест и был добавлен в набор инструкций x86 с 80386 процессор. BT копирует кусочек из данного регистр к нести флаг.[1]

Пример: скопируйте третий наименее значимый кусочек из EAX в нести флаг

BT EAX, 2

BTS (Bit Test and Set) работает так же, но также устанавливает бит в регистре,[2] пока БТР (Bit Test and Reset) сбрасывает его,[3] и BTC (Bit Test and Complement) переворачивает его.[4]


Логическое объяснение BT

  BT SRC, ПОЛОЖЕНИЕ
  SRC Представить как битовый массив
  ПОЛОЖЕНИЕ Представлено числовой позицией справа налево Начало с 0
  Флаг переноса CF
  Результат CF = SRC [POSITION]


Логическое объяснение BTC

  BTC SRC, ПОЛОЖЕНИЕ
  SRC Представить как битовый массив для результата CF Представить как шестнадцатеричный для результата SRC
  ПОЛОЖЕНИЕ Представляется числовой позицией справа налево Начало с 0
  Флаг переноса CF
  Результат CF = SRC [POSITION] XOR SRC, POW (2, POSITION)


Рекомендации

  1. ^ «BT - Bit Test». Получено 2011-08-21.
  2. ^ «BTS - Bit Test and Set». Получено 2011-08-21.
  3. ^ «BTR - Bit Test and Reset». Получено 2011-08-21.
  4. ^ «BTC - Битовый тест и дополнение». Получено 2012-11-04.