欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機寄存器的問題求助 [打印本頁]

作者: 254zhang    時間: 2020-2-16 13:57
標題: 單片機寄存器的問題求助

一個寄存器有32位 , 相當于有4個字節 , 而一個地址能夠存放八位 ,相當于一個寄存器占用了四個地址

但是我發現 程序都是對寄存器首地址進行操作的的  , 那另外的三個地址存放的數據能改變嗎 ?

這是不是因為stm32 的 CPU的總線一次可以操作32位嗎 ?

作者: csmyldl    時間: 2020-2-16 19:46
而一個地址能夠存放八位 ,這個前提就不對,32位單片機一個地址能存放32位二進制,內存使用可以定義存放8位為一個地址,即使用char定義存放數據的類型
作者: 254zhang    時間: 2020-2-17 11:14
csmyldl 發表于 2020-2-16 19:46
而一個地址能夠存放八位 ,這個前提就不對,32位單片機一個地址能存放32位二進制,內存使用可以定義存放8位 ...

但是拿單片機兩個相鄰的寄存器來看的話 :
GPIOx_CRL 偏移地址位 0x00
而GPIOx_CRLH 的偏移量位 0x04;
這不能說明 GPIOx_CRL 占了 4 個 地址嗎    然后這個寄存器有 32位的    ,那么一個地址存放 8位數據
作者: banalsheep    時間: 2020-2-17 12:34
254zhang 發表于 2020-2-17 11:14
但是拿單片機兩個相鄰的寄存器來看的話 :
GPIOx_CRL 偏移地址位 0x00
而GPIOx_CRLH 的偏移量位 0x04 ...

字節的定義就是8位,起始地址用字節表示,所以只能說GPIOx_CRL、GPIOx_CRH的起始地址相差4個字節,物理上,32位機本身總線寬度是32位,以字節算,一個寄存器確實占用4個字節。對32位寄存器操作時,只要編譯器支持32位操作,操作對象當然是起始地址(你認為的首字節)
作者: 254zhang    時間: 2020-2-18 10:07
banalsheep 發表于 2020-2-17 12:34
字節的定義就是8位,起始地址用字節表示,所以只能說GPIOx_CRL、GPIOx_CRH的起始地址相差4個字節,物理上 ...

那么32位單片機一個地址存放八位對不對呢 ?
操作寄存器的起始地址就相當于操作整個寄存器是因為編譯器是32位操作




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1