This week's book giveaway is in the Cloud/Virtualization forum.We're giving away four copies of Building Blockchain Apps and have Michael Yuan on-line!See this thread for details.
Win a copy of Building Blockchain Apps this week in the Cloud/Virtualization forum!
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
• Campbell Ritchie
• Paul Clapham
• Liutauras Vilda
• Knute Snortum
• Bear Bibeault
Sheriffs:
• Devaka Cooray
• Jeanne Boyarsky
• Junilu Lacar
Saloon Keepers:
• Ron McLeod
• Stephan van Hulst
• Tim Moores
• Carey Brown
• salvin francis
Bartenders:
• Tim Holloway
• Piet Souris
• Frits Walraven

# >>>

Greenhorn
Posts: 16
True or False?
Unsigned Right Shift on a Negative Integer always returns
a Positive Integer.
why it is false..can someone help plz~

tumbleweed
Posts: 5089
Unsigned Right Shift
The word unsigned says it all. This means that the sign bit which is the left-most bit (also called high-order bit) is not included in the shift.

Ranch Hand
Posts: 158
If you mean Shift-Right-With-Zero-Fill, the >>> operator, then that's probably a trick question. If you shift an integer 0 or any multiple of 32 bits to the right, you will get the same number again. Take this example:
int x = -1;
x = x >>> 0; // x is still -1
x = x >>> 32 // x is still -1
And so on. Now honestly I'm not sure why you get back to the same number after 32, unless it somehow subtracts the highest multiple of 32 from the bit shift number, then shifts??? Dangit, now I have a question...
------------------
Michael J Bruesch
Codito, ergo sum...
I code, therefore I am.
http://www.geocities.com/mjbruesch

Michael Bruesch
Ranch Hand
Posts: 158
Alright, found it.

The number of bits shifted is always in the range modulus 32 for an int value, and in the range modulus 64 for a long value.
A Programmer's Guide to Java Certification by Khalid Mughal

That's why a 32 shift distance is the same as a 0 shift distance.
------------------
Michael J Bruesch
Codito, ergo sum...
I code, therefore I am.
http://www.geocities.com/mjbruesch

Johannes de Jong
tumbleweed
Posts: 5089
Whow I have egg on my face
According to sun :
"unsigned right shift, >>> , changes sign of negative numbers"
see this
So you Hung the answer should be true. Where did you get the the question and answer ??

Hung Chang
Greenhorn
Posts: 16
wow, now i understand^^
thanx guys..

Hung Chang
Greenhorn
Posts: 16
this Question comes from Jtips exam at mock exam1 number#27

Johannes de Jong
tumbleweed
Posts: 5089
Hun look here Java FAQ 3.21 hope that helps.

Sheriff
Posts: 9099
12
The key is "always"
Unsigned Right Shift on a Negative Integer always returns
a Positive Integer.