Remix.run Logo
Keyframe 6 days ago

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

pdpi 6 days ago | parent | next [-]

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.

tzs 6 days ago | parent | next [-]

10-bit has sort of been used. The General Instrument CP1600 family of microprocessors used 16-bit words but all of the instruction opcodes only used 10 bits, with the remaining 6 bits reserved for future use.

GI made 10-bit ROMs so that you wouldn't waste 37.5% of your ROM space storing those 6 reserved bits for every opcode. Storing your instructions in 10-bit ROM instead of 16-bit ROM meant that if you needed to store 16-bit data in your ROM you would have to store it in two parts. They had a special instruction that would handle that.

The Mattel Intellivision used a CP1610 and used the 10-bit ROM.

The term Intellivision programmers used for a 10-bit quantity was "decle". Half a decle was a "nickel".

jacquesm 6 days ago | parent | next [-]

That's a very interesting bit of lore, I knew those were peculiar CPUs but I never know about these details, thank you!

dboreham 6 days ago | parent | prev [-]

I grew up down the road from a GI factory, so assumed everyone knew these things ;)

pratyahava 6 days ago | parent | prev | next [-]

Crockford base32 would be great. it is 0–9, A–Z minus I, L, O, U.

pdpi 6 days ago | parent [-]

The moment you feel the need to skip letters due to propensity for errors should also be the moment you realise you're doing something wrong, though. It's kind of fine if you want a case insensitive encoding scheme, but it's kind of nasty for human-first purposes (e.g. in source code).

xpe 6 days ago | parent [-]

> The moment you feel the need to skip letters due to propensity for errors should also be the moment you realise you're doing something wrong, though.

When you think end-to-end for a whole system and do a cost-benefit analysis and find that skipping some letters helps, why wouldn't you do it?

But I'm guessing you have thought of this? Are you making a different argument? Does it survive contact with system-level thinking under a utilitarian calculus?

Designing good codes for people isn't just about reducing transcription errors in the abstract. It can have real-world impacts to businesses and lives.

Safety engineering is often considered boring until it is your tax money on the line or it hits close to home (e.g. the best friend of your sibling dies in a transportation-related accident.) For example, pointing and calling [1] is a simple habit that increases safety with only a small (even insignificant) time loss.

[1] https://en.wikipedia.org/wiki/Pointing_and_calling

pdpi 5 days ago | parent [-]

You misunderstood me.

I started off by saying that 0-9a-v digits was "a bit extreme", which was a pretty blatant euphemism — I think that's a terrible idea.

Visually ambiguous symbols are a well-known problem, and choosing your alphabet carefully to avoid ambiguity is a tried and true way to make that sort of thing less terrible. My point was, rather, that the moment you suggest changing the alphabet you're using to avoid ambiguity should also be the moment you wonder whether using such a large number base is a good idea to begin with.

In the context of the original discussion around using larger bytes, the fact that we're even having a discussion about skipping ambiguous symbols is an argument against using 10-bit bytes. The ergonomics or actually writing the damned things is just plain poor. Forget skipping o, O, l and I, 5 bit nibbles are just a bad idea no matter what symbols you use, and this is a good enough reason to prefer either 9-bit bytes (three octal digits) or 12-bit bytes (four octal or three hex digits).

int_19h 6 days ago | parent | prev | next [-]

Clearly it should be 12 bits, that way you could use either 3 hex digits or 4 octal ones. ~

monocasa 6 days ago | parent [-]

Alternate world where the pdp-8 evolved into our modern processors.

ajuc 6 days ago | parent | prev [-]

5 bit nibbles could just be Baudot Code (A-Z + some control characters).

ochrist 5 days ago | parent [-]

Came here to say that. But to my knowledge there has never been any computers based on 5 bits.

phpnode 6 days ago | parent | prev | next [-]

why stop there? 16-bit bytes would be so much cleaner

dboreham 6 days ago | parent [-]

UTF-16 enters the chat..

iosjunkie 6 days ago | parent | prev | next [-]

No! No, no, not 10! He said 9. Nobody's comin' up with 10. Who processing with 10 bits? What’s the extra bit for? You’re just wastin’ electrons.

ajuc 6 days ago | parent [-]

Having 0-1000 fit inside a byte would be great. 1 byte for tonnes, 1 for kg, 1 for g, 1 for mg. Same with meters, liters, etc. Would work great with metric.

Or addressing 1 TB of memory with 4 bytes, and each byte is the next unit: 1st byte is GB, 2nd byte is MB, 3rd byte is KB, 4th byte is just bytes.

titzer 6 days ago | parent | prev | next [-]

10 bit bytes would be awesome! Think of 20 bit microcontrollers and 40 bit workstations. 40 bits makes 5 byte words, that'd be rad. Also, CPUs could support "legacy" 32 bit integers and use a full 8 bits for tags, which are useful for implementing dynamic languages.

Waterluvian 6 days ago | parent | prev | next [-]

Uh oh. Looks like humanity has been bitten by the bit byte bug.

pratyahava 6 days ago | parent | prev [-]

deleted

relevant_stats 6 days ago | parent [-]

I really don't get why some people like to pollute conversations with LLMs answers. Particularly when they are as dumb as your example.

What's the point?

svachalek 6 days ago | parent | next [-]

Same, we all have access to the LLM too, but I go to forums for human thoughts.

pratyahava 6 days ago | parent [-]

ok, agree with your point, i should have got the numbers from chatgpt and just put them in the comment with my words, i was just lazy to calculate how much profit we would have with 10-bit bytes.

pratyahava 6 days ago | parent | prev [-]

umm, i guess most of the article is made by llm, so i did not see it as a sin, but for other cases i agree, copy-pasting from llm is crap

CyberDildonics 6 days ago | parent [-]

On hacker news the comments need to be substance written by a person, but the articles can be one word title clickbait written by LLMs.