I am new to the field of embedded systems. Recently I was learning about the differences between different bit size (8, 16, 32) microcontrollers. What I found was that the size of bit indicates the memory addressing capacity, data bus and address bus size etc. Every other website has almost the same explanation. But still I could not find answer to some of the questions. To list them:
Is it really necessary for the address and data bus to be the same size as the bit size of the micro.
What is it that will become fixed for sure for a given bit sized microcontroller?
Do a microcontroller have have same address bus for all the memories (RAM, flash, EEPROM) and if so, is it the choice of manufacturer to allot any size to any type of memory out of the available addresses?
Say there's an 8 bit microcontroller. So it can adress 2^8 memory locations (that's what I figured out, I am not sure). If each register is 8 bit it means a total of (2^8)*8 =2048 bits of memory. That's not even close to the 32kb of flash inside most of them. What blunder am I making?