The moose likes Beginning Java and the fly likes very basic question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "very basic question" Watch "very basic question" New topic

very basic question

priya selva

Joined: Feb 21, 2002
Posts: 29
how to represent -ve numbers in binary...

i know that x= 0000....0110
~x=1111....1001(how do v interpret this as 7)
Dave Vick
Ranch Hand

Joined: May 10, 2001
Posts: 3244
To use your number as an example:
7 in binary is
00000000 00000000 00000000 000000111
to get a negative number you flip all of the bits (turn all of the 1s into 0s and all of the 0s into 1s) then add 1 to the result.
To change 7 into -7:

So, the binary number 11111111 11111111 11111111 111111001, is the same as -7 in decimal.
Does that help?

Greg Ostravich
Ranch Hand

Joined: Jul 11, 2002
Posts: 112
There's a Cat and Mouse game with Bits on JavaRanch you may want to check out.
It's easiest to flip the bits and add one to get a negative number.
Here's another way to look at it.
If you substract the highest bit from the rest and negate it.
I'm rusty on bits but here's some examples:

[ August 14, 2002: Message edited by: Greg Ostravich ]
[ August 14, 2002: Message edited by: Greg Ostravich ]

Greg Ostravich - SCPJ2
I agree. Here's the link:
subject: very basic question
It's not a secret anymore!