bitsra

Арифметика права сдвига разряда

Синтаксис

Описание

пример

c=bitsra(a,k) возвращает результат арифметического сдвига вправо k биты на входе a для операций фиксированной точки. Для операций с плавающей точкой это выполняет умножение на 2-k.

Если вход без знака, bitsra нули сдвигов в положения битов, что это переключает право. Если вход подписывается, bitsra переключает старший значащий бит (MSB) в положения битов, что он переключает право.

bitsra игнорирует fimath свойства, такие как RoundingMode и OverflowAction.

Когда a fi объект, a и c имейте то же самое, сопоставленное fimath и numerictype объекты.

Примеры

свернуть все

Создайте фиксированную точку со знаком fi объект со значением –8, размер слова 4, и дробная длина 0. Затем отобразите двоичное значение объекта.

a = fi(-8,1,4,0);
disp(bin(a))
1000

Переключите a прямо на 1 бит.

disp(bin(bitsra(a,1)))
1100

bitsra переключает MSB в положение бита, что это переключает право.

Используйте bitsra переключать int8 введите прямо на 2 бита.

a = int8(64);
bitsra(a,2)
ans = int8
    16

Сдвиг исправляет встроенный int8 введите использование fi переключите значение.

k = fi(2);
a = int8(64);
bitsra(a,k)
ans = int8
    16

Масштабируйте double с плавающей точкой введите 2-3.

a = double(128);
bitsra(a,3)
ans = 16

Входные параметры

свернуть все

Данные, которые вы хотите сдвинуть в виде скаляра, вектора, матрицы или многомерного массива fi объекты или встроенные числовые типы.

Типы данных: fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Поддержка комплексного числа: Да

Количество битов, чтобы переключить в виде неотрицательного скалярного fi с целочисленным знаком возразите или встроенный числовой тип.

Типы данных: fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Расширенные возможности

Смотрите также

| | |

Представленный в R2007b