How would u explain a system being xx-bit system to an average person?

sram

[H]ard|Gawd
Joined
Jul 30, 2007
Messages
1,699
Hello friends and i call u friends because I love this forum.

I've got an interesting issue, which is: What would be the best way to explain to an average somebody who is not an IT/Computer-related major the difference between a system being 16-bit and a system being 32-bit OR 32-bit vs 64-bit...etc? This somebody will have some math knowledge of course. Okay, it has to do with how much information/data I can deal with(more bits=more data), but hey I'm not the best out there to explain this, I know there are some gurus who can word this explanation much better than me. So please experts, grant us that magical paragraph that you think will suit/serve all.

Thanks in advance.
 
Why not just explain to them that technology progresses and that 32bit will be gone in a few years just as 16bit is now.

Or do they want an actual explanation?
 
Use some made-up analogies.

In the old times, we were probably okay with 3-digit phone numbers... there were simply not that many phones in the world. As the phone network expands, we need to add, say, two more digits to make 5-digit phone numbers, so that every phone gets a unique number. That went okay for a while, but the phone network grew really quickly, so we had to add two more digits to make 7-digit phone numbers, ....

Phone network size => amount of memory in a computer
Digits in a phone number => number of bits in a memory address

This analogy should cover the basics. The real story, of course, is a little more complicated.
 
Just tell them that RAM requirements are growing just as processor speed and drive space increases. 32-bit has hit it's highest point with it's 4gb limitation, and within the next year or two, RAM requirement is going to exceed it. It's time to move into the 64-bit realm to prepare for that eventuality.
 
I had good success with the 32 vs 64 bit explanation using road analogy. 32bit is a single lane, 64bit is two lanes. Yes, 64bit can still support vehicles which only require a single lane, but there's no way to fit an oversized truck onto a single lane. However, it helps that I live in an area where real oversized trucks are common, so it's easy to understand what the analogy means since most folks have seen those trucks first hand.
 
Last edited:
If they actually want to understand what it means, I wouldn't use an analogy. If they just want a rough sense of what the benefits and drawbacks are, then that might work.

When computers are referred to as being n-bit machines, it usually means that the base register size is n-bits wide, and the ALUs and datapath can operate on at least n-bits of data simultaneously.
 
A mate of mine asked me this a while back when he got a new PC that came with Vista 64bit. I told him that his CPU is made from 64 parts or 'bits', crammed together in a small package. He said he's 'heard something like that before. Its how many transistors its got right?'. :D
 
The most basic analogy would be to say something like "32 bit means you can do <x> amount of work in one second's time... while 64 bit allows you to do twice that, literally, because the information is being processed in "chunks" which are twice the size."

My favorite analogy goes like this:

If it were for example a mover packing up a house, the 32 bit mover could carry one box of stuff on any given trip; the 64 bit mover can carry two, so twice as much stuff in the same trip.

The biggest hurdle is when the person you're trying to explain this to then inevitably asks "Oh, so 64 bit is twice as fast because it's carrying twice the load" which you then have to explain:

"Well, technically it's just processing data in chunks twice as large. Just because that mover can carry two boxes instead of one in any given trip, he's still only human so, he's not going to be carrying them quite as fast, especially on stairs, etc, and so because of the other factors of carrying twice the load, he's not going to finish the job twice as fast as the 32 bit guy each and every time, but he does get it done significantly faster overall."

I use that one all the time and it seems to get the point across to most people... just because it's processing data in chunks twice the size doesn't automagically make it twice as fast, but it does give better performance overall in the long run.
 
For x86-compatible PCs, 32-bit vs 64-bit means different things to different people.

For some people, the most important part is that you get a 64-bit address space. My analogy focuses on this aspect, becaues I think this is why most people care about 64-bit computers and operating systems.

For some people, the most important part is that you get 64-bit integer registers and the arithmetic/logic instructions to go with them. jimmyb and Joe both seem to focus on this aspect. Thuleman seems to focus on this part as well, but part of the analogy does not fit: you can perform 64-bit computations using only 32-bit registers, it will just be slower.

For some people, the most important part is that you get quite a few more integer registers in the x86-64 instruction set. This part has nothing to do with 64-bit really, it just happens to be bundled as part of the x86-64 ISA. But this may be a reason for going x86-64 for some people.
 
The biggest hurdle is when the person you're trying to explain this to then inevitably asks "Oh, so 64 bit is twice as fast because it's carrying twice the load" which you then have to explain: .....
I would explain this part differently.

Whether the 64-bit mover is faster than the 32-bit mover depends on his job. If he is with a moving company, sure the extra capacity helps. If he is a UPS delivery guy, who for the most part delivers only one box to each address, then no, he would not be all that much faster than the 32-bit mover.

This explanation holds true in practice: 64-bit code is often not that much faster than 32-bit code, because few programs use 64-bit integer operations extensively. In case where 64-bit code is faster, it is often due to the extra registers available in x86-64, which has little to do with the width of each register.

And 64-bit integer operations are not any slower than their 32-bit counterparts. In modern processors, nearly all integer instructions take 1 clock cycle.
 
I just tell people that 32-bit systems are limited to less than 4GB of RAM and because computers are coming with 4GB+ RAM now, they're switching to 64-bit. Simple. :p
 
I just tell people that 32-bit systems are limited to less than 4GB of RAM and because computers are coming with 4GB+ RAM now, they're switching to 64-bit. Simple. :p

That's what I'd say. People generally don't want to know the technicalities; they just want to know what it can do for them and why they would want it.
 
Ask them this; if you explained it to them, would they understand the answer and have a better grasp on the concept, or would they be more confused because they have to deal with twice the bits. =D
 
Just say: You have a 64bit OS, make sure you download drivers that are for the 64bit version, besides that everything works fine.

Done and Done. Works for 99% of the cases.
 
I would explain this part differently.

[...]

This explanation holds true in practice: 64-bit code is often not that much faster than 32-bit code, because few programs use 64-bit integer operations extensively. In case where 64-bit code is faster, it is often due to the extra registers available in x86-64, which has little to do with the width of each register.

And 64-bit integer operations are not any slower than their 32-bit counterparts. In modern processors, nearly all integer instructions take 1 clock cycle.

This is why I think analogies generally do a disservice in comprehending computer architecture. CPUs are nothing like delivery services.

In general, you won't see any performance improvements moving to a 64 bit architecture, unless you're hitting those corner cases such as exceeding the address space, or requiring greater precision, and as you mentioned there is less spillage when a compiler is allocating registers but that has little to do with it being 64 bit. There's almost no increased instruction level parallelism (and the increased bit level parallelism is seldom useful), as the delivery service analogy would suggest.
 
64-bit CPU's can natively process a 64-bit instruction. 32-bit can only do 32. Due to this, larger and more complex operations require more clock cycles to execute on 32-bit architecture. A memory address is part of an instruction and since 64-bit instructions are larger they can handle a larger address space (more RAM).

Perhaps giving him an overview of machine code and assembler would give them a better idea.
 
Just tell them to imagine how much a 32-bit processor can handle at once...and then tell them 64-bit makes it to where that number can double.
 
I know you guys wouldn't let me down. Great responses/comments.

Thanks.
 
Back
Top