bitor
位操作或
描述
例子
真值表
为逻辑或操作创建真值表。
A = uint8([0 1;0 1]);B = uint8([0 0;1 1]);table = bitor(A, B)
TTable =2x2 uint8矩阵0 1 1 1
bitor
如果任意一个位输入为1,则返回1。
负
MATLAB®使用二的补码对负整数进行编码。例如,要找到2的-5的补表示法,需要取数字(00000101
),交换每个位(11111010
),然后将结果(11111011
).
因此,-5 (11111011
)及6 (00000110
)为-1 (11111111
).
A = -5;bitget (8: 1:1,“int8”)
ans =1×81 1 1 1 1 1 0 1 1
B = 6;bitget (b, 8: 1:1,“int8”)
ans =1×80 0 0 0 0 1 1 0
C = bitor(a,b,“int8”)
C = -1
bitget (c, 8: 1:1,“int8”)
ans =1×81 1 1 1 1 1 1 1 1 1
将字节组合为32位无符号整数
使用bitor
而且bitshift
将4个8位字节打包到它们组成的32位整数中。
创建四个字节的数据。类型使用十六进制字面值指定数据-u32
后缀指定数据应存储为uint32
.每个字节包含8位的数据。
Byte4 = 0x87u32;Byte3 = 0x65u32;Byte2 = 0x43u32;Byte1 = 0x21u32;
首先将第一个字节添加为32位无符号整数的前8位。
packkednum = byte1;
接下来,将其他三个字节打包到packedNum
,使用bitshift
将字节移到适当的位置,并且bitor
把比特复制过来。
packkednum = bitor(packkednum,bitshift(byte2,8));packkednum = bitor(packkednum,bitshift(byte3,8*2));packkednum = bitor(packkednum,bitshift(byte4,8*3));
查看打包后的32位整数。
格式十六进制packedNum
packedNum =uint3287654321
输入参数
A、B
- - - - - -输入值
标量|向量|矩阵|多维数组
输入值,指定为标量、向量、矩阵或多维数组。输入一个
而且B
必须是相同的大小或具有兼容的大小(例如,一个
是一个米
——- - - - - -N
矩阵和B
是标量或1
——- - - - - -N
行向量)。有关更多信息,请参见基本操作的兼容数组大小.一个
而且B
Also必须是相同的数据类型,除非其中一个是标量双精度。
如果
一个
而且B
双数组,和assumedtype
未指定,则MATLAB®对待一个
而且B
作为无符号的64位整数。如果
assumedtype
则所有元素都在一个
而且B
必须在的范围内具有整数值assumedtype
.
数据类型:双
|逻辑
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
assumedtype
- - - - - -假设数据类型为integ1
而且integ2
“uint64”
|“uint32”
|“uint16”
|“uint8”
|“int64”
|“int32”
|“int16”
|“int8”
假设数据类型为一个
而且B
,指定为“uint64”
,“uint32”
,“uint16”
,“uint8”
,“int64”
,“int32”
,“int16”
,或“int8”
.
如果
一个
而且B
那么,是双数组吗assumedtype
可以指定任何有效的整数类型,但默认为“uint64”
.如果
一个
而且B
是整型数组吗assumedtype
必须指定相同的整数类型。
数据类型:字符
|字符串
netobj1
,netobj2
- - - - - -输入值
.NET枚举对象
输入值,指定为. net枚举对象。你一定在运行Windows的某个版本®使用. net枚举对象作为输入参数。
bitor
是一个实例方法,用于从。net枚举创建的MATLAB枚举对象。
输出参数
C
—逐位OR结果
数组
按位的OR结果,作为数组返回。C
是相同的数据类型一个
而且B
.
如果任何一
一个
或B
一个是双标量,另一个是整数类型,那么C
整数类型。
objout
—逐位OR结果
.NET枚举对象
逐位的OR结果,作为. net枚举对象返回。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。
HDL代码生成
使用HDL Coder™为FPGA和ASIC设计生成Verilog和VHDL代码。
线程环境
使用MATLAB®在后台运行代码backgroundPool
或使用并行计算工具箱™加速代码ThreadPool
.
这个函数完全支持基于线程的环境。万博1manbetx有关更多信息,请参见在线程环境中运行MATLAB函数.
GPU数组
通过使用并行计算工具箱™在图形处理单元(GPU)上运行来加速代码。
使用注意事项和限制:
两个输入都可以是无符号整数数组,或者一个输入可以是无符号整数数组,另一个输入可以是双精度标量。
不支持64位整数。万博1manbetx
的
assumedtype
参数不支持。万博1manbetx
有关更多信息,请参见在图形处理器上运行MATLAB函数(并行计算工具箱).
分布式阵列
使用并行计算工具箱™跨集群的组合内存对大型数组进行分区。
版本历史
R2006a之前介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。