Industrial Training




Architecture of 8 bit and 16 bit microprocessor Machine Language Instructions

8, 16, 32 and now 64 define the bitness of a CPU. For a simple answer we can say that it relates to the maximum memory a processor register can address. A x bit CPU can handle 2^x bytes of memory. However, if we dig a bit deeper, it is much more than that.

Let's take the most common type of CPU: 32-bit one!

The increasing the bitness allows the CPU to address more memory for an individual process. So, a 64-bit system can handle a process that requires more than 4GBs of memory.

This is not the case with a 32-bit system as they only support about 4GBs of memory. But, in actual use case, the total memory available to a 32-bit OS is really just 3.25GBs. There is a technique called PAE (Physical Address Extension), that allows the whole system to use around 2^36-bytes of memory, but still a single process cannot have more than 4GBs of memory allocated to it. Photoshop comes to mind in such case.

A 64-bit CPU has many more general-purpose registers (GPR). As the register is in the top of memory hierarchy, it is the fastest.





There are only 8-GPRs in 32-bit CPUs and 16 in 64-bit CPUs. If you are using 32-bit software in a 64-bit capable CPU, the whole capability of the CPU is not utilized.

Recalling what this was all about:

RAM allowed: 4GB for the whole system and less than 2GB for a single process in a 32-bit system Popularity: 32-bit is the most popular but 64-bit is taking its place as time goes by. Speed/Performance: Obviously more the bitness, more is the performance, but not necessarily visible.

But, all is not good and well in increasing the bitness because although a 64-bit system can utilise the increased address space, the software made specifically for the operation in a 64-bit environment need more space and memory. This is because, at the level of software development, the pointers we make now consume 8-bytes in a 64-bit system as opposed to 4-bytes in the 32-bit system.

Now even if you have a large amount of RAM and storage available, the increased bit size causes some performance issues as the large size executables take more time to open(which is really negligible BTW!). More pages are required from memory, and processor caches are filled faster. Well, this is not to say that 64-bit it bad, but you lose something for gaining something, right?

This is same for 8 and 16-bit CPUs




Hi I am Pluto.