Главная

Назад к списку функции

 

 

BitRotate

Выполняет операцию циклического побитового сдвига.

BitRotate ( value [, shift = 1 [, size = "W" ]] )

Параметры

value Число
shift

[необязательный] Число битов для сдвига влево

Отрицательные числа означают сдвиг вправо. По умолчанию равно 1.

size [необязательный] Символ, указывающий число битов, участвующих в циклическом сдвиге. По умолчанию - "W" (16 битов). См. ниже.


Параметр size:

"B" сдвигать биты младшего байта (8 битов)
"W" сдвигать биты младшего слова (16 битов)
"D" сдвигать биты двойного слова (32 битов)

Возвращаемое значение

Успех: Возвращает результат указанного сдвига.
Ошибка: Устанавливает значение @error, если параметр size задан неверно

Операции над битами выполняются только для 32-битовых целых чисел..

Примечания

В качестве значений параметров функции можно использовать шестнадцатеричное представление чисел.

См. также

BitShiftBitANDBitNOTBitORBitXORHex

Пример

 

; ротация - движение по кругу, все биты сдвигаются вправо, а последний перемещается в начало, или наоборот.
$x = BitRotate(7, 2)
;  x = 28 потому что 7 с двойной ротацией преобразуется в 28
;   7 в бинарном виде 0000000000000111
; 28 в бинарном виде 0000000000011100

$y = BitRotate(14, -2)
;  y = 32771 потому что 14 с двойной ротацией вправо в пределах 16 битной разрядности преобразуется в 32771
;      14 в бинарном виде 0000000000001110
; 32771 в бинарном виде 1000000000000011

$z = BitRotate(14, -2, "D")
;  z = -2147483645 потому что 14 с двойной ротацией вправо в пределах 32 битной разрядности преобразуется в -2147483645
;                14 в бинарном виде 00000000000000000000000000001110
; -2147483645 в бинарном виде 10000000000000000000000000000011

MsgBox(0, 'Сообщение', $x & @LF & $y & @LF & $z)

Категория: Описание функций AutoIt Добавил: Grek (20.12.2014) | Теги: BitRotate
Всего комментариев: 0