Shr/ru
From Free Pascal wiki
Jump to navigationJump to search
│
Deutsch (de) │
English (en) │
français (fr) │
русский (ru) │
Обзор
Shift right (shr) выполняет операцию битового сдвига вправо (противоположное действие shl).
Shr со знаковыми типами
Примечание: в отличие от оператора >> в языке C, оператор shr является логическим (не арифметическим) оператором сдвига, даже если левый операнд является знаковым целым числом. Неявное приведение типов и расширение до большего беззнакового типа может быть выполнено до операции сдвига. Проверьте, что в действительности напечатает следующая программа.
program ShrTest;
begin
WriteLn(ShortInt(-3) shr 1);
end.
Проверить установлен ли бит
function isBitSet(AValue, ABitNumber:integer):boolean;
begin
result:=odd(AValue shr ABitNumber);
end;