I’m working on a problem on Codewars where an IPv4 address is converted
binary and then to a 32 bit number, but I don’t know how this happens.
Converted to binary: 10000000.00100000.00001010.00000001
Converted to 32 bit: 2149583361
Now I’m with it on the binary conversion because I know how binary
128 is written as 10000000 in binary, so this makes sense to me so far.
However I’m not sure how 32 bit numbers are constructed, so I have no
how the above binary is then represented as the 32 bit number
Could someone explain how 32 bit numbers are calculated? Thanks!
Start from the rightmost number and multiply by 2^0 (1). Take the next
digit to the left and multiply by 2^1 (2). Continue like this until you
get through the entire 32 digits. Add them together as you go and this
will be your 32-bit number.
www.BlindAdventures.com: Read about my adventures as a blind person
Latest Blog Post: Road Trip
It is essentially this: 1 + (10 << 8) + (32 << 16) + (128 << 24) =
if you include each group as a Hex number you get 80.20.0A.01 Also don’t
forget that IP numbers are unsigned. This number is the one you convert
and you will get 2149581057. The mistake you made was using base 10 to
convert the number not base 16
Windows 7 has a program called converter which will allow various
conversions of numbers of base 2, 8, 10, and 16 with different byte
sizes, char, short, long, and double long.