【发布时间】:2018-01-16 11:29:30
【问题描述】:
我必须在 C 中创建一个字节掩码。 我有一个数组,其中:
myArray[0] - 连续掩码第一位索引
myArray[1] - 连续掩码最后一位索引
连续掩码表示位与位。 Byte 中的其余位为零。
示例:myArray[0]=1 和 myArray[1]=2 所以我的字节掩码应该是:00000110
myArray 值可能不同,因此掩码不同。 我将在另一个字节上使用此掩码(使用和/或/xor 操作)来归档所需的结果。
能否请您提供创建这种掩码的简单 C 语言代码?
【问题讨论】:
-
不管字节序如何,将 LSB 存储在字节 0 中是最有意义的。
-
为什么这里需要有混乱的数组?只有 2 个变量:例如
msb_index和lsb_index。 -
我的任务的第一步是执行一些控制台程序,输出类似于这样的数据:=================== pattern: [ 3; 6;-3] 模式:[ 4; 6;-2] 模式:[ 2; 3; 6]图案:[2; 7; 4] =================== 然后我必须创建四个字节掩码。第一列包含 LSB,第二列包含 MSB。最后一列包含循环位移位的计数(左或右取决于符号 pos/neg)。我决定过滤掉这些值并将它们输入一个数组以供将来操作。