指CPU处理的数据的宽度,参与运算的寄存器的数据长度?
如果总线宽度与CPU一次处理的数据宽度相同,则这个宽度就是所说的单片机位数。
如果总线宽度与CPU一次处理的数据宽度不同:
1)总线宽度小于CPU一次处理的数据宽度,则以CPU的数据宽度定义单片机的位数,但称为准多少位。比如著名的Intel 8088,CPU是16位但总线是8位,所以它是准16位。
2)总线宽度小于CPU一次处理的数据宽度,则以CPU的数据宽度定义单片机的位数。
少位宽不是指总线宽度,也不是存储器的宽度,像51单片机的地址总线是16位的,但是它是8位机。像ARM的存储器也有八位的,但是它是32位机。而是指CPU处理的数据的宽度,也就是CPU一次数据的吞吐量。比如同一条指令:MOV R0 R2
在51单片机里面,R0和R2都是8位的,所以51的CPU一次只能处理8位数据。
在ARM里面,R0和R2是32位的,所以ARM的CPU一次能处理32位数据。这就是区别。
有啥复杂的, 一句话: 参与运算的寄存器的数据长度