[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Answer about bits and bytes
Jim Gillogly <[email protected]> writes:
> jim bell <[email protected]> writes:
> >See, I do not challenge the fact that there were plenty of data objects of
> >length other than 8-bits. The issue is whether or not the people back then
> >actually believed that a correct, official usage of the term "byte" included
> >lengths other than 8.
>
> Reading from the PDP-10 Reference Handbook (DEC, 1971) page 2-30, we read:
>
> To conserve memory, it is useful to store data in less than full
> 36-bit words. Bytes of any length, from 1 to 36 bits, may be
> entered using a BYTE statement.
>
> BYTE (N) X,X,X
...
_The Programmer's Guide to the 1802_ (Tom Swan, Hayden Books, 1981) says the
following on p. 19:
The eight binary digits or bits represented in Fig. 2-1 are commonly
given the name _byte, and in this book, one byte will always equal
eight bits. (This is a rather common convention in microcomputing, but
a byte does not always equal eight bits in much of the published
literature.) Some books also refer to computer "words," but, since a
"word" is even more loosely defined than a "byte," we will refrain from
using it as a label for binary numbers. In addition, to make things
come out right for eight-bit computers, leading zeros are usually
written in front of binary numbers so all numbers come out to even
multiples of eight-bit bytes.
_Assembler Reference Manual for the Sub Workstation, Version 1.0 of
30th November 1982_ (we're talking the Motorola 68K Sun 1 here!) says:
Many MC68000 machine instructions can operate upon byte (8-bit), word
(16-bit), or long word (32-bit) data.
They felt it necessary to specify this in a number of places.
A very important book that anyone who programs computers should read --
Donald Knuth, _The Art of Computer Programming_ (Addison Wesley, 1973), v. 1,
p. 120, says the following about the MIX language:
Words. The basic unit of information is a _byte. Each byte contains an
_unspecified amount of information, but it must be capable of holding
at least 64 distinct values. That is, we know that any number between 0
and 63, inclusive, can be contained in one byte. Furthermore, each byte
contains _at _most 100 distinct values. On a binary computer a byte
must therefore be composed of six bits; on a decimal computer we have
two digits per byte.
Programs written in the MIX language should be written so that no more
than sixty-four values are ever assumed for a byte. If we wish to treat
the number 80, we should always leave two adjacent bytes for expressing
it, even though one byte is sufficient on a decimal computer. _An
_algorithm _in _MIX _should _work _properly _regardless _of _how _big
_a _byte _is. Although it's quite possible to write programs which
depend on the byte size, this is an illegal act which will not be
tolerated; the only legitimate programs are those which would give
correct results with all byte sizes. It is usually not hard to abide by
these ground rule, and we will thereby find that programming a decimal
computer isn't so different from programming a binary one after all.
...
_A _computer _word _is _five _bytes _plus _a _sign. The sign position
has only two possible values, + and -.
Give it up, Jim -- I have more ancient writings than you can shake a dynamite
stick at. :-)
---
<a href="mailto:[email protected]">Dr. Dimitri Vulis</a>
Brighton Beach Boardwalk BBS, Forest Hills, N.Y.: +1-718-261-2013, 14.4Kbps