Index Home About Blog
From: "dennis ritchie" <dmr@bell-labs.com>
Newsgroups: comp.arch
Subject: Re: 24-bit architecture
Date: Wed, 22 Jan 2003 19:20:47 -0000
Message-ID: <b0n0h2$781@netnews.proxy.lucent.com>

McCalpin wrote in message ...
>In article <3e2eeed4.790716748@news.eircom.net>,
>Russell Wallace <rw@vorpalbunnyeircom.net> wrote:
>>On 22 Jan 2003 10:22:16 -0800, shoppa@trailing-edge.com (Tim Shoppa)
>>wrote:
>>
>>>I don't think it's a bad thing.  There is nothing sacred about the 8-bit
>>>byte; you could even write an ANSI-compliant C compiler for your
>>>virtual architecture such that a byte was 12 or 24 bits.
>>
>>Apparently on some of the Cray machines, char, short, int and long
>>were all 64 bits.

Not char--it was 8 bits (in the classic Crays).

>IIRC, it was really worse than that.  Integers took up 64 bits
>of space, but arithmetic by default only used the low 48 bits.
>I think that this was so that integers and floats (also 64 bits)
>could use the same 48-bit multiplier array.

It was a little more complicated.  The operations that
could easily be done in the 64-bit registers (+ - & |)
were.  It used the cheat for * / and I think shift.

>A compiler option allowed the user to request full 64-bit integer
>math, at a penalty in speed.

I don't remember this, but I might have missed it,
or maybe it went in later.

>Lots of code never did get ported to these systems, though of
>course it was easy enough to write code from scratch that worked
>just fine with this set of type sizes.

We really didn't have too much problem with portability
in general.
One thing that Unicos really sweated over, however,
was getting the IP stack working.

    Dennis



Index Home About Blog