Another silly question

andre andre at targon.UUCP
Tue May 23 01:47:13 AEST 1989


In article <18560 at cup.portal.com> Tim_CDC_Roberts at cup.portal.com writes:
>In <1176 at mcrware.UUCP>, jejones at mcrware.UUCP (James Jones) writes:
>[pointer story]
>I disagree with this!  I assert that EVEN if the intermediate result
>goes negative, the final value will be correct, even on segmented 
>architectures.
Don't underestimate the intel approach to computing :-)
I have it on good authority that on the 386,
((adress) 0x0010 - 0x0100) + 0x0100 != 0x0010
but instead it winds up somewhere at the top of memory :-(.

>Yes, the intermediate value is not a valid address, but I don't think that's 
>important.
If the intermediate result would be put in an address register (on the '386)
(where else does an address even a bogus one belong else ?)
you will get a trap from the processors 'MMU'.


-- 
~----~ |m    AAA         DDDD  It's not the kill, but the thrill of the chase.
~|d1|~@--   AA AAvv   vvDD  DD        Segment registers are for worms.
~----~  &  AAAAAAAvv vvDD  DD
~~~~~~ -- AAA   AAAvvvDDDDDD        Andre van Dalen, uunet!mcvax!targon!andre



More information about the Comp.lang.c mailing list