Live data from Hacker News

We'd be better off with 9-bit bytes

pavpanchekha.com

11–20 of 359 posts

Re: We'd be better off with 9-bit bytes

#11
Problem is, not only did we have decades of C code that unnecessarily assumed 8/16/32, this all-the-world-is-a-VAX view is now baked into newer languages.

C is good for portability to this kind of machine. You can have a 36 bit int (for instance), CHAR_BIT is defined as 9 and so on.

With a little bit of extra reasoning, you can make the code fit different machines sizes so that you use all the available bits.

Re: We'd be better off with 9-bit bytes

#15
Can you imagine the argument for 8bit bytes if we still lived in the original 6bit world of the 1950s?

A big part of the move to 8bit systems was that it allowed expanded text systems with letter casing, punctuation and various ASCII stuff.

We could move to the world of Fortran 36bit if really needed and solve all these problems while introducing a problem called Fortran.

Re: We'd be better off with 9-bit bytes

#16
post #8

Ohh, and then we could write the digits in octal. Interestingly, the N64 internally had 9 bit bytes, just accesses from the CPU ignored one of the bits. This wasn't a parity bit, but instead a true extra data bit that was used by the GPU.

The N64's Reality Display Processor actually used that 9th bit as a coverage mask for antialiasing, allowing per-pixel alpha blending without additional memory lookups.

Re: We'd be better off with 9-bit bytes

#17
Non-power-of-2 sizes are awkward from a hardware perspective. A lot of designs for e.g. optimized multipliers depend on the operands being divisible into halves; that doesn't work with units of 9 bits. It's also nice to be able to describe a bit position using a fixed number of bits (e.g. 0-7 in 3 bits, 0-31 in 5 bits, 0-63 in 6 bits), e.g. to represent a number of bitwise shift operations, or to select a bit from a byte; this also falls apart with 9, where you'd have to use four bits and have a bunch of invalid values.

Re: We'd be better off with 9-bit bytes

#18
post #3

Yeah, but hear me out - 10-bit bytes!

One of the nice features of 8 bit bytes is being able to break them into two hex nibbles. 9 bits breaks that, though you could do three octal digits instead I suppose.

10 bit bytes would give us 5-bit nibbles. That would be 0-9a-v digits, which seems a bit extreme.

Post reply on HN