如何在VB.NET中执行按位运算?

时间:2010-10-28 19:23:38

标签: vb.net boolean bitwise-operators

我想在VB.NET中执行按位与运算,采用短(16位)变量并将其与'0000000011111111'进行运算(从而仅保留最低有效字节/ 8个最低有效位)。

我该怎么做?

3 个答案:

答案 0 :(得分:11)

表示为VB十六进制文字的<00> 0000000011111111是&amp; HFF(如果要显式则为&amp; H00FF),以及普通的AND运算符is actually a bitwise operator。所以要掩盖你写的Short的顶部字节:

shortVal = shortVal AND &HFF

有关将二进制常量输入VB的更有创意的方法,请参阅:VB.NET Assigning a binary constant

答案 1 :(得分:2)

使用And运算符,并以十六进制编写文字(从二进制文件轻松转换):

theShort = theShort And &h00ff

如果你真正想做的是将短片分成字节,那就有a built in method

Dim bytes As Byte() = BitConverter.GetBytes(theShort)

现在你有一个包含两个字节的数组。

答案 2 :(得分:-4)

result = YourVar AND cshort('0000000011111111')