Question

Which parameters decide the size of data type for a processor?

Is it the data bus which decides this? Or is it the Instruction Set Architecture?

Was it helpful?

Solution

The maximum width or the maximum amounts of bits a processor can deal with at the same time at a given time is specific to the particular processor you're using and would be decided by the width of it's data bus and also the width of all the data lines inside the CPU.

Essentially a CPU can operate on a certain amount of high's and low's (in terms of voltage) at any particular time, so I guess if you've got a 32bit CPU, it will have 32 physical lines in parallel on which it operates.

EDIT: Seems after a bit of research on this, that my answer is wrong, it's the internal register size of the CPU that determines it's size.

I'm no expert in CPU architecture, so I can't provide more detail.

OTHER TIPS

The question is rather unclear, but from your tags I surmise that you are talking about C data structures. The C compiler decides that, based on the architecture for which it is compiling.

Also take a look at this question.

Update: My answer referred to the version of the question before @Mat's edit.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top