exponenta event banner

bitxorreduce

Сокращение последовательного среза битов до одного бита путем выполнения побитового исключения OR операция

Описание

пример

c = bitxorreduce(a) выполняет побитовое монопольное OR работа со всем набором битов на входе с фиксированной точкой, a. Он возвращает результат в виде целого числа без знака длины слова 1.

пример

c = bitxorreduce(a, lidx) выполняет побитовое монопольное OR работа с последовательным диапазоном битов. Эта операция начинается с позиции lidx и заканчивается в LSB (бит в позиции 1).

пример

c = bitxorreduce(a, lidx, ridx) выполняет побитовое монопольное OR работа с последовательным диапазоном битов, начиная с позиции lidx и заканчивается на позиции ridx.

bitxorreduce аргументы должны удовлетворять следующему условию:

a.WordLength >= lidx >= ridx >= 1

Примеры

свернуть все

Создайте номер с фиксированной точкой.

a = fi(73,0,8,0);
disp(bin(a))
01001001

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

c = bitxorreduce(a)
c = 
     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

Создайте вектор с фиксированной точкой.

a = fi([12,4,8,15],0,8,0);
disp(bin(a))
00001100   00000100   00001000   00001111

Выполнение побитового исключения OR работа с битами каждого элемента a, запуск в положении fi(4).

c = bitxorreduce(a,fi(4))
c=1×4 object
     0     1     1     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

Создайте матрицу с фиксированной точкой.

a = fi([7,8,1;5,9,5;8,37,2],0,8,0);
disp(bin(a))
00000111   00001000   00000001
00000101   00001001   00000101
00001000   00100101   00000010

Выполнение побитового исключения OR операция над битами каждого элемента матрицы a начиная с позиции 5 и заканчивая позицией 2.

c = bitxorreduce(a,5,2)
c=3×3 object
     0     1     0
     1     1     1
     1     1     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

Входные аргументы

свернуть все

Входной массив, заданный как скаляр, вектор, матрица или многомерный массив с фиксированной точкой fi объекты.

bitxorreduce поддерживает как подписанные, так и неподписанные входы с произвольным масштабированием. Свойства знака и масштабирования не влияют на тип и значение результата. bitxorreduce выполняет операцию над двухразрядным представлением запомненного целого числа.

типы данных: фиксированная точка fi

Начальная позиция диапазона, заданного как скаляр встроенного типа. lidx представляет положение в диапазоне, ближайшем к MSB.

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

Конечное положение диапазона, указанное как скаляр встроенного типа. ridx представляет положение в диапазоне, ближайшем к LSB (бит в положении 1).

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

Выходные аргументы

свернуть все

Выходной массив, заданный как скаляр, вектор, матрица или многомерный массив с фиксированной точкой fi объекты. c не имеет знака с длиной слова 1.

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен в R2007b