Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site rlgvax.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!rlgvax!guy From: guy@rlgvax.UUCP (Guy Harris) Newsgroups: net.arch Subject: Re: Arbitrary byte alignment Message-ID: <171@rlgvax.UUCP> Date: Sun, 7-Oct-84 01:11:16 EDT Article-I.D.: rlgvax.171 Posted: Sun Oct 7 01:11:16 1984 Date-Received: Mon, 8-Oct-84 03:21:41 EDT References: <470@houxl.UUCP> <420@intelca.UUCP> Organization: CCI Office Systems Group, Reston, VA Lines: 17 > One of the nicer things the DEC-10s and 20s had was something called a > byte pointer.... Memory was always accessed as a 36 bit word > and the extraction was done in microcode I am pretty sure. I sure > wish some of todays processors were so talented and didn't need > such archaic things such as byte, and word alignment with bytes > fixed at 8 bits. On the original KA10, a quick look at the timing would indicate that an LDB or STB instruction did its work via the old trick of "shift and mask"; the timings were dependent on how many bits you had to shift the word right or left. (The KA10 wasn't microcoded, and I don't think the KI10 was, either; I don't remember whether the KL10 timings implied it was done by shifting or not.) You need a barrel shifter or somesuch to make it doable in a fixed number of cycles. Guy Harris {seismo,ihnp4,allegra}!rlgvax!guy