2026a

# >>>=


逻辑右移赋值

# 语法

x >>>= n
B::BitVector >>>= n

# 说明

x >>>= n 逻辑右移赋值操作,等同于 x = x >>> y。对于 n >= 0,返回结果是 x 右移 n 位二进制位,空缺位用 0 填充。对于 n < 0 ,相当于 x << -n示例


B::BitVector >>>= n 位向量逻辑右移赋值操作,等同于 B = B >>> n。对于 n >= 0,返回 B 中元素向右移动 n 个位置的位向量,填充逻辑假值(false)。 如果 n < 0,则元素向左移动,相当于 B << -n示例

# 示例

无符号整数右移赋值

将 x = 6 的二进制位逻辑右移 1 位,最高位用 0 填充,返回 x = 3。

x = 6;
x >>>= 1
3

其中 6 与 3 表示为 8 位二进制分别为:

bitstring(Int8(6))
"00000110"
bitstring(Int8(3))
"00000011"
有符号整数右移赋值

将 x = -14 的二进制位逻辑右移 2 位,最高位用 0 填充,返回 x = 60。

x = Int8(-14);
x >>>= 2
60

其中 -14 与 60 表示为 8 位二进制分别为:

bitstring(Int8(-14))
"11110010"
bitstring(Int8(60))
"00111100"
位向量右移赋值

创建位向量 B。

B = BitVector([true, false, true, false, false])
5-element BitVector:
1
0
1
0
0

将 B 向右移动 1 位,空缺位用 0 填充。

B >>>= 1
5-element BitVector:
0
1
0
1
0

将 B 向右移动 -1 位,相当于向左移动 1 位,空缺位用 0 填充。

B >>>= -1
5-element BitVector:
1
0
1
0
0

# 输入参数

x - 输入标量
有符号整数 | 无符号整数

输入有符号整数或无符号整数标量。

数据类型:Int8 | Int16 | Int32 | Int64 | Uint8 | Uint16 | Uint32 | Uint64

n - 交换位数
整数

交换的位数,指定为整数。

B - 位向量
位向量

输入仅包含布尔值的位向量。

数据类型:Bool

# 另请参阅

>>> | &= | |= | >>= | <<=