位设置
位设置 | |
---|---|
术语名称 | 位设置 |
英语名称 | 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)操作。
位运算 | ||
---|---|---|
按位运算 | 按位运算 | 按位取反、按位与、按位或、按位异或 |
特殊情况 | 掩码、位设置、位清除、位反转 | |
移位运算 | 算术移位 | 算术左移、算术右移 |
逻辑移位 | 逻辑左移、逻辑右移 | |
循环移位 | 循环左移、循环右移 |