varian's user image
User since: Jan 15, 2007 at 20:21 UTC (17 years ago)
Last here: Nov 25, 2014 at 17:21 UTC (9 years ago)
Experience: 1954
Level:Chaplain (11)
Writeups: 109
User's localtime: Dec 08, 2023 at 13:47 CET
Scratchpad: View
For this user:Search nodes

You probably won't believe me but in the old old old days before the advent of the Personal Computer, real computers could perform miracles equiped with only 24 KBytes of internal memory (24,576 bytes).
Every bit was holy, every byte a precious gift. Even the instruction set itself could be adapted to ones need, via a technique called micro-programming.

What you're gazing at is the frontpanel of a real-life Varian72 computer, developed by a long gone IT company called Varian Data Systems. Isn't she a beauty?
Just look at those 16 buttons on the top row. It tells you this is a 16-bit mini-computer and you can press any of those buttons to literally set or clear the corresponding bit in the computer's memory. And if you like to clear them all then there's an extra button on the left to make that miracle happen.

Did you notice that the buttons are grouped by three? Any idea why? It's because the computer instruction itself occupies the leftmost bits while the lower rightmost 3, 6 or 9 bits indicate the registers and/or a value that the instruction operates on.
Each group of 3 bits is called an octet. It can be denoted by one digit with a value in the set (0..7). Programmers only have to remember the octal number rather than all 16 bits individually. The system is similar to hexadecimal but it requires slightly more digits to depict the 2 bytes.
A quick example:

16 bits : 0 101 011 111 001 100 in octal: 053714 in hex : 57CC

Ah well, all that is long gone. What has remained is good memories and a nickname that honors one of the first computers that I have operated: the Varian72.

P.S. While octal representation is not used that often anymore, you can still find remnants of it in today's systems, e.g. the chmod command in Unix or Linux can take an octal number as its operand to specify access levels to files and directories.