訪問片外定址
『壹』 試簡述MCS-51的定址方式訪問特殊功能寄存器和片外數據存儲器時各應選用什麼定址
直接定址;寄存器定址;寄存器間接定址;變址定址;相對定址;位定址。
訪問特殊功能寄存器只能用直接定址。訪問片外數據存儲器只能寄存器間接定址。
『貳』 MCS-51系列單片機片內RAM與片外RAM存儲器各有哪些定址方式
片內RAM的定址的定址方式有:立即數定址、直接定址、寄存器定址、寄存器間接定址和位定址。
片外RAM的定址方式只有間接定址。
訪問片外RAM只有寄存器間接定址,MOVX A,@DPTR,MOV A,@RI,MOV @DPTR.A,MOV @RI,A,只有這四個指令,其它就沒有了。
訪問ROM(ROM不分片內片外)只有變址定址了,MOVC A,@A+DPTR,MOVC A,@A+PC.其它也沒有了。
『叄』 訪問片外RAM單元和特殊功能寄存器各有哪幾種定址方式
訪問片外RAM用的是寄存器間接定址
訪問特殊功能寄存器可採用直接定址,特殊功能寄存器的地址如果被8整除還可以使用位定址
『肆』 片內定址怎麼計算
片內定址計算:
8個晶元作為一組,共16組。
每組有1024*8b,1024=2的10次方,所以是10位參與片內定址。
16組為2的4次方,所以4位用作晶元組選擇信號。
數據匯流排16根,所以字長為16。系統程序區和用戶程序區都是8kWord,因此ROM部分若採用2732則需要8k×16÷(4k×8) = 4片,RAM部分需要8k×16÷(8k×8) =2片。
一個存儲器
通常由多個存儲器晶元組成,CPU要實現對存儲器單元的訪問,首先要選擇存儲器晶元,然後再從選中的晶元中依照地址碼來選擇相應的存儲單元讀/寫數據。分為片內定址和片外定址。片內定址:由CPU輸出的低位地址碼來選擇具體的存儲單元的方式叫片內定址。
『伍』 為什麼單片機寄存器間接定址能訪問片外64K空間,它不是8位的嗎
單片機的 P0.0 做為低位地址線,P2.0作為高位地址線的時候,就總共有 16 根地址線,也就是可以定址 2的16次方地址,也就是 65536 (64K)地址。8位的單片機指的是數據匯流排的寬度,也就是說傳輸的數據最高是8位寬度,和地址匯流排沒關系的。8051的單片機 P0 口作為地址和數據匯流排復用,P2 口只能作為地址擴展介面使用。你把這地址寬度和數據寬度這兩個概念搞混了……
『陸』 訪問8031片外數據存儲器採用的是什麼定址方式
特殊功能寄存器只能直接定址
片外數據存儲器只能間接定址,只能通過DPTR或R0和R1向A傳送
MOVX A @DPTR
MOVX A @R0/@R1
MOVX @DPTR A
MOVX @R0/@R1 A
這是由指令規定的,所以只要記住是這么回事就行了,不要問為什麼。
『柒』 親,訪問片外RAM和片外ROM都有哪些定址方式
親,訪問片外RAM只有寄存器間接定址,MOVX A,@DPTR,MOV A,@RI,MOV @DPTR.A,MOV @RI,A,只有這四個指令,其它就木有了。
親,訪問ROM(親,ROM不分片內片外喲)只有變址定址了,MOVC A,@A+DPTR,MOVC A,@A+PC.其它也木有了。
親,看明白了嗎?看明白記得給好評喲。