[comp.misc] The definitive

seanf@sco.COM (Sean Fagan) (03/06/89)

In article <5988@bsu-cs.UUCP> pervect@bsu-cs.UUCP (Barrett Kreiner) writes:
>All machines have an internal WORD size (WORD is *NOT* interchangeable with
>BYTE)  a BYTE is defined as 8 bits.. a Nybble (havn't used that in a while) is
>4 bits.  a WORD (on most of all current machines) is a combination of bytes
>and bits.  now repeat after me..
>WORD != BYTE

Very good.  You've got that down.

>BYTE= 8 bits

Then, you blow it here.  Byte is a term that, on microprocessors, meant 8
bits.  Machines from Unisys's predecessor (I'm showing my age, am't I?) had
9-bit bytes, and 18-bit words.  So did quite a few DEC machines.  In fact,
the PDP-11 and VAX are, I believe, DEC's only machines with 8-bit bytes (if
I'm wrong, I'm sure thousands of people will inform me).  IBM had 8-bit
bytes for their 360, but not necessarily for earlier machines.  CDC had
12-bit bytes for the 6600 (that was what the PP's could address), but tended
to work with 6-bit bytes, since they could put 10 characters (6-bits each)
in a word (60-bits, of course).  When they came up with the CMU (Character
Move Unit), they had 6-bit bytes.  The ARM (Acorn RISC Machine) doesn't really
have bytes; everything is word-addressable on it (32-bit words).  I could
therefore make a case of it having a 32-bit byte.  I could go on, through
about 30-40 years of computer history, but I think you get the idea.
Please not the followup, ok?

>bit = binary decimal (0 or 1)

This is true.

>Nybble = 4 bits = 1/2 byte

Nybble is not used always.  You could ask a lot of programmers, and they
wouldn't know what it is.  Usually used by people who use microcomputers.

>WORD= anything a manufacuterer feels like..

The definitions that are usually used are:
Word = Most comfortable size for ALU et al.  For example, a 68000 has a
16-bit word, while a 68020 has a 32-bit word.
Byte = Smallest addressable unit.  Again, this is not always the case.  When
it isn't, it's usually used to mean the size of a character (which can be
anywhere from 6 to 64 bits!).

Sean.
-- 
Sean Eric Fagan  | "What the caterpillar calls the end of the world,
seanf@sco.UUCP   |  the master calls a butterfly."  -- Richard Bach
(408) 458-1422   | Any opinions expressed are my own, not my employers'.

kean@tank.uchicago.edu (Keane Arase) (03/10/89)

In article <2392@scolex.sco.COM> seanf@scolex.UUCP (Sean Fagan) writes:
>In article <5988@bsu-cs.UUCP> pervect@bsu-cs.UUCP (Barrett Kreiner) writes:
[stuff deleted]
>
>>bit = binary decimal (0 or 1)
>
>This is true.
>

So long as you want *correct* terms, bit=binary digit.
Decimal implies base 10.
---
Keane Arase, Systems Programmer, University of Chicago Computing Organizations
kean@tank.uchicago.edu           syskean@uchimvs1.uchicago.edu

              **  Please file the standard disclaimers here  **

dag@fciva.FRANKLIN.COM (Daniel A. Graifer) (03/10/89)

As I remember, the old Burroughs Large Systems (which have modern versions
still on the market) (the old 67/68/77/7800 machines) had a 48 bit word
(not counting the 3 hidden"tag" bits) which the hardware was quite happy to
treat as a collection of 4,6,or 8 bit bytes.  In fact there are hardware
instructions for copying from one character pointer to another of different
size, via a third pointer to a translate table.  These pointer move
instructions were the only ones that could address main memory as bytes though. 
The processor data registers were all 1 word long, and (it was a strictly stack
architecture machine) LOAD and STORE instructions were all word-at-a-time.

Wasn't the Burroughs 1700/1800 dynamically microcode-able to support arbitrary
word sizes up 24 bits?  You dynamically loaded different microcode out of a 
fast cache to optimize the processor "architecture" for whatever your current
application/language was (at least that's how it was described to me!)  That
company probably deserves some kind of award for producing machines with 
creative architectures.

This was all more than 10 years ago, so I may be confusing much....

Dan

Daniel A. Graifer			Franklin Capital Investments
uunet!fciva!dag				7900 Westpark Drive, Suite A130
(703)821-3244				McLean, VA  22102