On Mon, 18 May 2020, Peter Jeremy wrote:
8-bit bytes, 32/64-bit "words" and 2's
complement arithmetic have been
"standard" for so long that I suspect there are a significant number of
computing professionals who have never considered that there is any
alternative.
You haven't lived until you've dealt with a 1's-complement machine i.e. -0
!= 0 ... To be fair, it was *mostly* normalised.
Yep, I think
that is the real crux of the issue. If you grew up with
systems that used a 5, 6, or even a 7-bit byte; you have an
appreciation of the difference.
I've used a 36-bit system that supported 6 or 9-bit bytes. IBM Stretch
even supported programmable character sizes.
Ever tried a Univac or a Honeywell? I don't remember the exact details,
and I prefer to keep it that way...
The Alpha was byte addressed, it just didn't
support byte operations on
memory (at least originally). That's different to word-oriented
machines that only supported word addresses. Supporting byte-wide
writes at arbitrary addresses adds a chunk of complexity to the
CPU/cache interface and most RISC architectures only supported word
load/store operations.
I had to support an old Alpha once; that was one of the reasons why I was
happy to leave the joint. We had just one customer who used an Alpha, and
thus we/I had to maintain the thing.
And don't even ask me about HP-UX (just as well that they weren't called
Packard-Hewlett), nor Xenix, nor early Slowaris, nor National Cash
Registers, nor...
Excuse me, I now have to take my sleepy pills :-)
-- Dave