C# 位掩码和-按偏移量和长度偏移
我想创建一个位掩码,并按偏移量和长度创建位掩码偏移量 例如:C# 位掩码和-按偏移量和长度偏移,c#,.net,bit-manipulation,bit-shift,C#,.net,Bit Manipulation,Bit Shift,我想创建一个位掩码,并按偏移量和长度创建位掩码偏移量 例如: offset=8和 length=4 位掩码应为:0xF00=3840(十进制为1111.0000.0000) 位偏移量应为:0x100=256(十进制) 我试过以下方法,但那是错误的: ulong mask = 0; for (int i = 0; i < offset; i++) { mask += (1 << 1) | 0; } ulong mask=0; 对于(int i=0;i
offset=8
和
length=4
位掩码应为:0xF00=3840(十进制为1111.0000.0000)
位偏移量应为:0x100=256(十进制)
我试过以下方法,但那是错误的:
ulong mask = 0;
for (int i = 0; i < offset; i++)
{
mask += (1 << 1) | 0;
}
ulong mask=0;
对于(int i=0;i 掩码+=(1一种方式可能类似于:
ulong mask = ((1 << length) - 1) << offset;
一种方法可能是:
ulong mask = ((1 << length) - 1) << offset;
偏移量定义第一个1
开始的时间和长度是1
的数字直到0
还是什么?偏移量定义第一个1
开始的时间和长度是1
的数字直到0
还是什么?