BitArray Esimerkki
koodi
Esimerkin
funktio laskee aritmeettisesti yhteen kaksi BitArray
typpistä muuttujaa, jotka esittavät
binäärikoodattuja lukuja.
Public Shared MAXBITS As Integer ' maksimi määrä bittejä luvuissa
Public Shared Function Add(ByVal B As System.Collections.BitArray, ByVal C As System.Collections.BitArray) As System.Collections.BitArray
'Add = B + C,
oltava saman pituisia MAXBITS
Dim m As Boolean = False
Dim K As Integer = B.Length - 1
Dim A As New System.Collections.BitArray(B.Length)
Dim i As Integer
For i = 0 To K
A.Item(i) = B.Item(i) Xor C.Item(i) Xor m
m = (B.Item(i) And C.Item(i)) Or ((B.Item(i) And m)) Or ((C.Item(i) And m))
Next
Return A
End Function
Käyttö esimerkki:
MAXBITS = 1000 ' annetaan laskennan koko
Dim ba1 As New System.Collections.BitArray(MAXBITS) : ba1.Item(10) = True '1024
Dim ba2 As New System.Collections.BitArray(MAXBITS) : ba2.Item(5) = True ' 32
'yhteenlasku ba3 = ba1 + ba2
ba3 = BitArr.Add(ba1, ba2)