8、16、32位單片機(jī)概念與尋址空間
玩了接近三年的單片機(jī),8位、16位、32位的都玩過(guò),突然間一個(gè)問(wèn)題就讓我發(fā)現(xiàn)我就是一個(gè)渣!!!
8位、16位、32位都代表什么意思呢?我就根據(jù)搜集的知識(shí),簡(jiǎn)單的對(duì)自己科普一下:
1)、 從CPU的發(fā)展史來(lái)看,從以前的8位到現(xiàn)在的64位,8位也就是CPU在一個(gè)時(shí)鐘周期內(nèi)可并行處理8位二進(jìn)字符0或是1,那么16就以此類推是64位就64位二進(jìn)制。
2)、8位、16位、32位單片機(jī)的區(qū)別還有就是寄存器位數(shù)的區(qū)別,8位的單片機(jī)其寄存器也是8位,以此類推32位的MCU也就是有32位的寄存器(當(dāng)然他也可以有16或者是8位的寄存器)。
還有在學(xué)習(xí)ARM里遇到的一個(gè)問(wèn)題:尋址空間的問(wèn)題。
尋址空間一般指的是CPU對(duì)于內(nèi)存尋址的能力。Intel公司早期的CPU產(chǎn)品的地址總線和地址寄存器的寬度為20位,即CPU的尋址能力為2^20=1024*1024字節(jié)=1024K字節(jié)
=1M字節(jié);286的地址總線和地址寄存器的寬度為24位,CPU的尋址能力為2^24=1024*4*1024*4B=4*1024*4KB=16M;386及386以上的地址總線和地址寄存器的寬度為32位,
CPU的尋址能力為2^32=4096M字節(jié)=4G字節(jié)。 也就是說(shuō),如果機(jī)器的CPU過(guò)早,即使有很大的內(nèi)存也不能得到利用,而對(duì)于現(xiàn)在的PⅡ級(jí)的CPU,其尋址能力已遠(yuǎn)遠(yuǎn)超過(guò)目前的
內(nèi)存容量。
在這里有一個(gè)很重要的概念:CPU的尋址能力以字節(jié)為單位 。以32位的單片機(jī)為例(最近在上手K60),對(duì)地址0x4000 0001進(jìn)行賦值也就是對(duì)一個(gè)字節(jié)進(jìn)行操作,32位的寄
存器就需要占用4個(gè)地址(8*4=32),那它占有的地址就為0x4000 0000----0x4000 0003。32位就代表了2^32的尋址空間也就是4G。
一些簡(jiǎn)單的問(wèn)題寫出來(lái),有什么不對(duì)之處,煩請(qǐng)各位過(guò)路的朋友指正!
編輯:admin 最后修改時(shí)間:2018-05-18