逻辑右移

来自GSXAB的知识库
逻辑右移
术语名称 逻辑右移
英语名称 logical right shift
别名 按位右移, 右移, right shift

逻辑右移(logical right shift)是位运算的一种,指将数据的全部向低位移动并在高位补 0 的运算。对于表示一般性二进制数据或无符号整数的二进制串,可以简称为右移(right shift)。对有符号整数的情况需要与算术右移区分。

定义

逻辑右移
运算名称 逻辑右移
运算符号
Latex
运算对象 二进制串, 自然数
运算元数 2
运算结果 二进制串
定义域 [math]\displaystyle{ \mathbb{B}^n \times \mathbb{N} }[/math]
陪域 [math]\displaystyle{ \mathbb{B}^n }[/math]

对二进制串 [math]\displaystyle{ b_1 b_2 \cdots b_m }[/math] 和自然数 [math]\displaystyle{ n }[/math] ,得到二进制串 [math]\displaystyle{ \underbrace{ 0 0 \cdots 0}_{n 个 0} b_1 b_2 \dots b_{m-n} }[/math] ,称这种运算为逻辑右移(arithmetic right shift),得到的二进制串称为原二进制串逻辑右移 [math]\displaystyle{ n }[/math](shifted right by [math]\displaystyle{ n }[/math] (bits) (logically))的结果。


位运算
按位运算 按位运算 按位取反按位与按位或按位异或
特殊情况 掩码位设置位清除位反转
移位运算 算术移位 算术左移算术右移
逻辑移位 逻辑左移逻辑右移
循环移位 循环左移循环右移