what are 32 and 64-bits in computers and what difference do they make?

662 views

Does it make the computer faster? And how are they different from 8 and 16-bit video game consoles?

In: 2446

20 Answers

Anonymous 0 Comments

“Bits” are just what we call digits in a number that uses base-2 (binary) instead of base-10 (decimal). In our normal decimal number system, a three digit number can hold a thousand different values, from 000 up to 999. Every time you add a digit, you get 10x as many values you can represent.

In base-2, every extra bit doubles the number of values you can represent. A single bit can have two values: 0 and 1. Two bits can represent four unique values:

00 = 0
01 = 1
10 = 2
11 = 3

When we talk about a computer being “8-bit” or “64-bit”, we mean the number of binary digits it uses to represent one of two things:

1. The size of a CPU register.
2. The size of a memory address.

On 8- and 16-bit machines, it usually just means the size of a register, and addresses can be larger (it’s complicated). On 32- and 64-bit machines, it usually means both.

CPU registers are where the computer does actual computation. You can think of the core of a computer as a little accountant with a tiny scratchpad of paper blinding following instructions and doing arithmetic on that scratchpad. Registers are that scratchpad, and the register size is the number of bits the scratchpad has for each number. On an 8-bit machine, the little accountant can effectively only count up to 255. To work with larger numbers, they would have to break it into smaller pieces and work on them a piece at a time, which is much slower. If their scratchpad had room for 32 bits, they could work with numbers up to about 4 billion with ease.

When the CPU isn’t immediately working on a piece of data, it lives in RAM, which is a much larger storage space. A computer has only a handful of registers but can have gigabytes of RAM. In order to get data from RAM onto registers and vice versa, the computer needs to know *where* in RAM to get it.

Imagine if your town only had a single street that everyone lived on. To refer to someone’s address, you’d just need a single number. If that number was only two decimal digits, then your town couldn’t have more than 100 residents before you lose the ability to send mail precisely to each person. The number of digits determines how many *different* addresses you can refer to.

To refer to different pieces of memory, the computer uses addresses just like the above example. The number of bits it uses for an address determines the upper limit for how much memory the computer can take advantage of. You could build more than 100 houses on your street, but if envelopes only have room for two digits, you couldn’t send mail to any of them. A computer with 16-bit addresses can only use about 64k of RAM. A computer with 32-bit addresses can use about 4 gigabytes.

So bigger registers and addresses let a computer work with larger numbers faster and store more data in memory. So why doesn’t every computer just have huge registers and addresses?

The answer is cost. At this level, we’re talking about actual electronic hardware. Each bit in a CPU register requires dedicated transistors on the chip, and each additional bit in a memory address requires more wires on the bus between the CPU and RAM. Older computers had smaller registers and busses because it was expensive to make electronics back then. As we’ve gotten better at make electronics smaller and cheaper, those costs have gone down, which enable larger registers and busses.

At some point, though, the usefulness of going larger diminshes. A 64-bit register can hold values greater than the number of stars in the universe and a 64-bit address could (I think) uniquely point to any single letter in any book in the Library of Congress. That’s why we haven’t seen much interest in 128-bit computers (those there are sometimes special-purpose registers that size).

You are viewing 1 out of 20 answers, click here to view all answers.