File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes unsigned right shift operator >>". " title="" /> Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "unsigned right shift operator ">>>". " Watch "unsigned right shift operator ">>>". " New topic

unsigned right shift operator ">>>".

srinibash udayasingh

Joined: Jul 09, 2007
Posts: 22
Hi Ranchers

i am always confuse to solve " unsigned right shift operator ">>>". ".

can anyone explain with examples how it works.

Mallik Avula
Ranch Hand

Joined: Nov 30, 2006
Posts: 86
Hi srinibash udayasingh ,
If the left-hand operand is positive, the result is the same as a right-hift
For example: 16 >> 2 = 4
Decimal 16 00000000000000000000000000010000
Right-shift 2 00000000000000000000000000010000
fill left 00000000000000000000000000000100
discard right 00000000000000000000000000000100 -> Decimal 4

If the left-hand operand is negative,
For example: -16 >>> 2 = 1,073,741,820
Decimal -16 11111111111111111111111111110000
>>> 2 11111111111111111111111111110000
fill left 0011111111111111111111111111110000
discard right 00111111111111111111111111111100 -> 1,073,741,820.

Hope it will help you.

Thanks & Regards<br />Mallik Avula<br />SCJP1.4
Bert Bates

Joined: Oct 14, 2002
Posts: 8898
remember this topic is valid for the 1.4 exam but it's NOT on the 5.0 exam.

Spot false dilemmas now, ask me how!
(If you're not on the edge, you're taking up too much room.)
marc weber

Joined: Aug 31, 2004
Posts: 11343

The signed right shift operator (>>) shifts to the right while maintaining the sign. That means it fills in positions on the left with the same value as the "sign bit" (the leftmost bit before the shift). This has the effect of keeping positive values (with a sign bit of 0) positive by filling in with zeros, and keeping negative values (with a sign bit of 1) negative by filling in with ones.

The unsigned right shift operator (>>>) shits to the right without caring what the original sign was. It simply fills in positions on the left with zeros.

(Note Bert's post above.)
[ July 20, 2007: Message edited by: marc weber ]

"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer
I agree. Here's the link:
subject: unsigned right shift operator ">>>".
jQuery in Action, 3rd edition