exponenta event banner

кусающееся животное

Описание

пример

C = bitor(A,B) возвращает побитовое ИЛИ A и B.

пример

C = bitor(A,B,assumedtype) предполагает, что A и B являются assumedtype.

objout = bitor(netobj1,netobj2) возвращает побитовое значение OR объектов перечисления .NET netobj1 и netobj2.

Примеры

свернуть все

Создайте таблицу истинности для логической операции OR.

A = uint8([0 1; 0 1]);
B = uint8([0 0; 1 1]);
TTable = bitor(A, B)
TTable = 2x2 uint8 matrix

   0   1
   1   1

bitor возвращает 1, если любой битовый вход равен 1.

MATLAB ® кодирует отрицательные целые числа с помощью дополнения two. Например, чтобы найти представление дополнения -5 для двух, следует взять битовый шаблон положительной версии числа (00000101), поменять местами каждый бит (11111010), а затем добавить 1 к результату (11111011).

Следовательно, побитовое ИЛИ -5 (11111011) и 6 (00000110) равно -1 (11111111).

a = -5;
bitget(a,8:-1:1,'int8')
ans = 1×8

     1     1     1     1     1     0     1     1

b = 6;
bitget(b,8:-1:1,'int8')
ans = 1×8

     0     0     0     0     0     1     1     0

c = bitor(a,b,'int8')
c = -1
bitget(c,8:-1:1,'int8')
ans = 1×8

     1     1     1     1     1     1     1     1

Использовать bitor и bitshift чтобы упаковать четыре 8-битных байта в 32-битное целое число, которое они составляют.

Создайте четыре байта данных. Укажите данные с шестнадцатеричными литералами, используя -u32 суффикс, указывающий, что данные должны храниться как uint32. Каждый байт содержит 8 битов данных.

byte4 = 0x87u32; 
byte3 = 0x65u32; 
byte2 = 0x43u32; 
byte1 = 0x21u32;

Начните с добавления первого байта в качестве первых 8 битов 32-разрядного целого числа без знака.

packedNum = byte1;

Затем упакуйте остальные три байта в packedNum, использование bitshift для перемещения байтов в соответствующие местоположения, и bitor для копирования битов.

packedNum = bitor(packedNum,bitshift(byte2,8));
packedNum = bitor(packedNum,bitshift(byte3,8*2));
packedNum = bitor(packedNum,bitshift(byte4,8*3));

Просмотрите упакованное 32-разрядное целое число.

format hex
packedNum
packedNum = uint32
   87654321

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

свернуть все

Входные значения, указанные как скаляры, векторы, матрицы или многомерные массивы. Исходные данные A и B должны иметь одинаковый размер или совместимые размеры (например, A является Mоколо-N матрица и B является скаляром или 1около-N вектор строки). Дополнительные сведения см. в разделе Совместимые размеры массивов для основных операций. A и B также должен быть того же типа данных, если один не является скалярным двойником.

  • Если A и B являются двойными массивами, и assumedtype не указан, то MATLAB ® обрабатываетA и B как беззнаковые 64-разрядные целые числа.

  • Если assumedtype указывается, то все элементы в A и B должны иметь целочисленные значения в диапазоне assumedtype.

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

Предполагаемый тип данных A и B, указано как 'uint64', 'uint32', 'uint16', 'uint8', 'int64', 'int32', 'int16', или 'int8'.

  • Если A и B являются двойными массивами, то assumedtype может указать любой допустимый тип целого числа, но по умолчанию 'uint64'.

  • Если A и B - массивы целочисленных типов, то assumedtype необходимо указать тот же самый тип целого числа.

Типы данных: char | string

Входные значения, указанные как объекты перечисления .NET. Для использования объектов перечисления .NET в качестве входных аргументов необходимо запустить версию Windows ®.

bitor является методом экземпляра для объектов перечисления MATLAB, созданных из перечисления .NET.

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

свернуть все

Результат ИЛИ, возвращаемый в виде массива. C является тем же типом данных, что и A и B.

  • Если либо A или B является скалярным двойником, а другой - целым типом, то C - целочисленный тип.

Результат ИЛИ, возвращенный в виде объектов перечисления .NET.

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

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

.

Создание кода графического процессора
Создание кода CUDA ® для графических процессоров NVIDIA ® с помощью Coder™ графических процессоров

.

Создание кода HDL
Создание кода Verilog и VHDL для проектов FPGA и ASIC с использованием Coder™ HDL.

Представлен до R2006a