1. 程式人生 > >8位微控制器 16位 32位區別?

8位微控制器 16位 32位區別?

指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位資料。這就是區別。

有啥複雜的, 一句話: 參與運算的暫存器的資料長度