位设置

来自GSXAB的知识库
位设置
术语名称 位设置
英语名称 bit set

位设置(bit set)指将数据的某些指定置 1 的操作。通过与掩码进行按位或完成。

定义

对二进制串 [math]\displaystyle{ b_1 b_2 \cdots b_n }[/math] ,若需要将其中下标为 [math]\displaystyle{ j_1 j_2 \cdots j_r }[/math] 的位变成 1 ,保留其他的位,可以构造掩码 [math]\displaystyle{ m_1 m_2 \cdots m_n }[/math] ,其中 [math]\displaystyle{ m_i = \begin{cases} 1, i \in \{j_1,j_2,\cdots,j_r\} \\ 0, i\notin \{j_1,j_2,\cdots,j_r\} \end{cases} }[/math] ,令两二进制串进行按位或,则结果即为所需二进制串,这一操作称为位设置(bit set)操作。


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