# N-bit processor and ALU in MCU

Status
Not open for further replies.

#### final_destination

##### Newbie level 4
Hello Everyone!!

1. Can anyone explain what is the meaning of an N-bit processor?
whether its data bus width is N-bits or its the width of the internal general purpose data register?

2. How can you link a N-bit processor with processor ALU? whether its ALU width is N-bits?

#### KlausST

##### Super Moderator
Staff member
Hi,

1) Isn't the internal data bus width the same as register bit width?

2) it is a problem of the mathematical operations.
.For an 8 bit system:
An ADD of two 8 bit registers give an 8 bit result (plus carry bit). So a 8 bit register is enough for the result.
A multiply of two 8 bit registers gives 16 bit result. Therefor you usually have two 8 bit result registers.

Klaus

final_destination

### final_destination

Points: 2

#### final_destination

##### Newbie level 4
Hi,

1) Isn't the internal data bus width the same as register bit width?

2) it is a problem of the mathematical operations.
.For an 8 bit system:
An ADD of two 8 bit registers give an 8 bit result (plus carry bit). So a 8 bit register is enough for the result.
A multiply of two 8 bit registers gives 16 bit result. Therefor you usually have two 8 bit result registers.

Klaus

1. Yes internal data bus width is same as register bit width.

2.
A multiply of two 8 bit registers gives 16 bit result. Therefor you usually have two 8 bit result registers.
means the processor size and ALU size are same? if 16 bit processor ALU can process data in the range 0-65535 ?
correct me if I am wrong!

Regards,

#### KlausST

##### Super Moderator
Staff member
Hi,

Code:
means the processor size and ALU size are same? if 16 bit processor ALU can process data in the range 0-65535 ?

Typically yes.

But there may be deviations.
I think I have seen 16bit x 16bit multiplication ALUs within an 8 bit controller. Then you have two 8 bit registers for each input.
And four 8bit registers as output.

Klaus

#### final_destination

##### Newbie level 4
Hi,

So
1. the bit size of a processor means the ALU width?? and ALU width is the same width as the CPU's internal registers!!

2. the "size" of a processor is not really the width of its data bus? For example, the 8088 was a 8 bit bus version of the 8086, but both were considered "16 bit" processors.

Correct me if I am wrong!

Thank you,

#### KlausST

##### Super Moderator
Staff member
Hi,

Afaik, the 8088 is a downsized but command compatible derivate ot the 8086.

To be code compatible it is important for an 8 bit processor to act like a 16 bit processor. I don´t know if only the external data bus is limited to 8 bit or the internal databus also.
The difference is: either it uses two access in series to 8 bit register, or one access to a 16 bit register.

Klaus

#### final_destination

##### Newbie level 4
Hi Klaus,

What I am trying to prove it here is the bit size of a processor means the width of ALU not the data bus width!! is that correct definition for bit size of processor?

like 8-bit processor means - 8bit ALU inbuild
16-bit processor - 16bit ALU

or other way, An N-bit processor capable of processing N-bit width operands in ALU.

and in pic10,pic12,pic16,pic18,pic24 mcus..10,12,16,18,24 means the size width of opcode in ALU.

Correct me if I am wrong.

Thank you.

#### doraemon

##### Super Moderator
Staff member
Hello!

First you should define what you call width of the ALU. Width of the input or of the output?
Usually an ALU output width is twice the input width (multply 2 16-bit numbres gives you 32).
I would say that the bit width of a processor is the width of its registers.

Dora.

Status
Not open for further replies.