Hi all,

I'm working on a problem on Codewars where an IPv4 address is converted to

binary and then to a 32 bit number, but I don't know how this happens.

Example

IP: 128.32.10.1

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 works.

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 idea

how the above binary is then represented as the 32 bit number 2149583361.

Could someone explain how 32 bit numbers are calculated? Thanks!

Adam

## ···

--

== People often come up to me and ask "What the heck are you doing in my

shed!?" ==

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.

## ···

--

Brandon

www.BlindAdventures.com: Read about my adventures as a blind person

Latest Blog Post: Road Trip

Facebook: Brandon.Olivares

Twitter: @devbanana

On May 30, 2014, at 10:38 AM, Adam Wenham <adamwenham64@gmail.com> wrote:

Hi all,

I'm working on a problem on Codewars where an IPv4 address is converted to binary and then to a 32 bit number, but I don't know how this happens.

Example

IP: 128.32.10.1

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 works. 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 idea how the above binary is then represented as the 32 bit number 2149583361.

Could someone explain how 32 bit numbers are calculated? Thanks!

Adam

--

== People often come up to me and ask "What the heck are you doing in my shed!?" ==

It is essentially this: 1 + (10 << 8) + (32 << 16) + (128 << 24) = 2149583361

Mistral

## ···

On 30 May 2014, at 15:38, Adam Wenham <adamwenham64@gmail.com> wrote:

Hi all,

I'm working on a problem on Codewars where an IPv4 address is converted to binary and then to a 32 bit number, but I don't know how this happens.

Example

IP: 128.32.10.1

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 works. 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 idea how the above binary is then represented as the 32 bit number 2149583361.

Could someone explain how 32 bit numbers are calculated? Thanks!

Adam

--

== People often come up to me and ask "What the heck are you doing in my shed!?" ==

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.

. Adam Wenham wrote:

## ···

Hi all,

I'm working on a problem on Codewars where an IPv4 address is converted to binary and then to a 32 bit number, but I don't know how this happens.

Example

IP: 128.32.10.1

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 works. 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 idea how the above binary is then represented as the 32 bit number 2149583361.

Could someone explain how 32 bit numbers are calculated? Thanks!

Adam

--

== People often come up to me and ask "What the heck are you doing in my shed!?" ==