I guess it should work fine too. But why using longword for bit no.? Byte would do here much better and I don't suppose we'll need to check like 5000th bit of value soon. Therefore longword would just waste memory while byte would be much more memory-efficient here, especially when dealing with embedded systems.