> -----Original Message----- > From: IBM Mainframe Discussion List On Behalf Of Van Dalsen, Herbie > > John, > > That makes no sense to me... I thought that a 31-bit program > could address x'00000000' -> 'x'0FFFFFFF' below the line, and > the same above the line. I.O.W. it could go up to x'8FFFFFFF' > which means x'0FFFFFFF' > above ? This means that the hole is from x'00000000 90000000' -> ?
A 31-bit program can address from x'00000000' through x'7FFFFFFF'. Expressed in 64-bit addressing, that range is from x'00000000_00000000' through x'00000000_7FFFFFFF'. IOW, for a 31-bit program, the "high halves" of the 64-bit registers do not exist; they may actually contain "anything" and they will be ignored by 31-bit (and 24-bit) programs. A 64-bit program (amode 64) can address exactly the same range, in the same way, except that the "high halves" of the 64-bit registers MUST contain all binary zeroes. IN ADDITION, an amode 64 program can address from x'00000001_00000000' through x'FFFFFFFF_FFFFFFFF'. NO PROGRAM is allowed to address the space from x'00000000_80000000' through x'00000000_FFFFFFFF', which is the "bar", the "hole", or whatever other name seems appropriate. See previous posts from Ed Jaffe, Peter Relson and Chris Craddock for why that is a "good idea". -jc- ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html