1994 1995 1996 1997 1998 1999 2000 2001 <2002> 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 <2002> 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Bug on Pentium IOC |
From: | Eric Norum <[email protected]> |
To: | Dirk Zimoch <[email protected]> |
Cc: | Bernd Schoeneburg <[email protected]>, TECHTALK <[email protected]> |
Date: | Tue, 17 Dec 2002 08:38:54 -0600 |
Bernd Schoeneburg wrote:Hi all, can anyone explain this: ~(~0UL << 32) is 0xFFFFFFFF on a Motorola VME162 i.e., which is correct the same on a Pentium is 0, which is false! Ideas? Bernd
The Pentium (and all Intel x86s, I think) does all shifts mod 32. Thus (~0 << 32) is not shifted at all. => ~(~0 << 32) = ~~0 = 0
There may be other architectures that behave similar.
-- Eric Norum <[email protected]> Department of Electrical Engineering University of Saskatchewan Saskatoon, Canada. Phone: (306) 966-5394 FAX: (306) 966-5407