How to extract the last N bits of a 32-bit integer in VB.NET

1 Answer

0 votes
Imports System
  
Public Class myProgram
    Private Shared Function get_last_N_bits(ByVal number As Integer, ByVal N As Integer) As Integer
		Dim mask As Integer = (1 << N) - 1
		
		Return number AND mask
    End Function

	Public Shared Sub Main()
        Dim number As Integer = 441 ' 00000001101-11001
        Dim N As Integer = 5
          
        Console.WriteLine(Convert.ToString(number, 2).PadLeft(16, "0"c))
          
        Dim lastNbits As Integer = get_last_N_bits(number, N)
          
        Console.WriteLine(Convert.ToString(lastNbits , 2).PadLeft(16, "0"c))
    End Sub
End Class
  
  
  
' run:
'
' 0000000110111001
' 0000000000011011
'

 



answered Dec 24, 2023 by avibootz

Related questions

1 answer 126 views
1 answer 124 views
1 answer 113 views
1 answer 127 views
1 answer 120 views
1 answer 111 views
1 answer 125 views
...