Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

hexa decimal

 
Shiva Mohan
Ranch Hand
Posts: 486
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
class Q {

public static void main(String [] args) {

int x = 0x80000000;
System.out.print(x );
}
}

answer is -2147483648 if we take bit representation of hexa number 800000000 as
1000 0000 0000 0000 0000 0000 0000 0000.

But I always do my calculation like
1000 0000 0000 0000 0000 0000 0000 0000.(here we are just having 28 bits)so the remaning 4 bits are the begginnnig 0�s.

0000 1000 0000 0000 0000 0000 0000 0000 0000.(now the sign bit is positive,since it is positive ,my result is always 2147483648.i end up my calculation like this.)
Please help me.
 
prashanth kumar
Ranch Hand
Posts: 162
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
do calculation like this..
0x80000000;
0(*)16 pow 0 + 0(*)16 pow 1 + ............. + 8 (*)16 pow 7

Now the total value may exceed 2 pow 31 - 1
And hence it negates..

If i get a question like this,iam going to leave this

Cheers
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic