Битовый тест
The BT
Инструкция языка ассемблера x86 означает битовый тест и была добавлена в набор инструкций x86 с процессором 80386 . BT
копирует бит из заданного регистра во флаг переноса . [ 1 ]
Пример: скопировать третий наименее значимый бит из EAX во флаг переноса.
BT EAX, 2
BTS
(Bit Test and Set) работает так же, но также устанавливает бит в регистре, [ 2 ] пока BTR
(Bit Test and Reset) сбрасывает его, [ 3 ] и BTC
(Бит-тест и дополнение) переворачивает его. [ 4 ]
Логическое объяснение BT
BT SRC, POSITION
SRC Represent as bits array
POSITION Represent as numeric position From Right to Left Start at 0
CF Carry Flag
Result CF = SRC[POSITION]
Логическое объяснение BTC
BTC SRC, POSITION
SRC Represent as bits array for CF Result Represent as hex for SRC Result
POSITION Represent as numeric position From Right to Left Start at 0
CF Carry Flag
Result CF = SRC[POSITION] XOR SRC, POW(2,POSITION)
Ссылки
[ редактировать ]- ^ «BT – Битовый тест» . Проверено 21 августа 2011 г.
- ^ «BTS – Проверка и установка битов» . Проверено 21 августа 2011 г.
- ^ «BTR — проверка и сброс битов» . Проверено 21 августа 2011 г.
- ^ «BTC – Проверка и дополнение битов» . Проверено 4 ноября 2012 г.