Newsgroups: comp.arch Path: utzoo!henry From: henry@utzoo.uucp (Henry Spencer) Subject: Re: 68000 architecture Message-ID: <1989Jun4.065416.14250@utzoo.uucp> Organization: U of Toronto Zoology References: <1989May30.171335.473@utzoo.uucp> <658@geovision.UUCP> Date: Sun, 4 Jun 89 06:54:16 GMT In article <658@geovision.UUCP> gd@geovision.UUCP (Gord Deinstadt) writes: >>... You can run the 68k family with 16-bit addresses (although >>they have to be *signed* 16-bit addresses!). > >Can anyone tell my why Motorola did such a twisted, sick thing? For much the same reason Intel gave us segments, but from the other side of the fence: it was a time of transition past the 16-bit boundary, with nobody wanting to stay with a pure 16-bit solution but many customers resisting going to a pure 32-bit solution. Intel wanted bigger addresses but didn't want to enlarge registers etc., so we got segments. Motorola originally started out with 16-bit data but larger addresses -- which is why the A/D register split in the 68k -- but relatively late in design they went 32 most places. However, they wanted to preserve the ability for people to work in a 16-bit world, with only two bytes needed to store an address and only one fetch needed to get one across a 16-bit bus. So pretty well all the A-register manipulation instructions have variants that only work with the bottom 16 bits. They sign-extend, which is why the addresses are signed. We'll probably see the same approaches again when people start seriously contemplating the 32-bit boundary. -- You *can* understand sendmail, | Henry Spencer at U of Toronto Zoology but it's not worth it. -Collyer| uunet!attcan!utzoo!henry henry@zoo.toronto.edu