Path: utzoo!mnetor!uunet!husc6!uwvax!oddjob!ncar!noao!arizona!naucse!rrr From: rrr@naucse.UUCP (Bob Rose ) Newsgroups: comp.arch Subject: Re: negative addresses Message-ID: <689@naucse.UUCP> Date: 10 May 88 16:16:34 GMT References: <2393@uvacs.CS.VIRGINIA.EDU> Organization: Northern Arizona University, Flagstaff, AZ Lines: 25 Summary: Why? In article <2393@uvacs.CS.VIRGINIA.EDU>, wulf@uvacs.CS.VIRGINIA.EDU (Bill Wulf) writes: > Has anyone ever seen a machine with "negative addresses", that is, one > where the address space is -2**31..2**31-1 rather than 0..2*32-1?? > Any thoughts on what the problems with such a scheme might be (or are)? Is there really any difference? > Why ask such a question, you ask -- well, I'm trying to remove unsigned > arithmetic from WM, and as far as I can tell, the primary (only?) use > of unsigned arithmetic is for address computations. Soooooo... You must be _REAL_ disperate for silicon! Signed multiply, add and substract is the same as the unsigned counterparts except for maybe a condition code bit. Also signed divide normally has unsigned divide somewhere deep inside of it and its the signed divide that normally gets left out of the instruction set (VAX of course left out the unsigned divide but what the hey, the MC88000 has signed divide but it just does an unsigned divide or traps on negative numbers.) Also the primary use of unsigned numbers isn't just for address computations. Some of us use all the bits we can get (flags, fixed-point ...) Robert R. Rose Northern Arizona University, Box 15600 Flagstaff, AZ 86011 .....!ihnp4!arizona!naucse!rrr