日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]工作寄存器有4組,每組都是8個工作寄存器R0~R7,通過PSW中的RS1、RS0兩位來選擇使用哪一組,如果不選,默認(rèn)是選擇第0組。

工作寄存器有4組,每組都是8個工作寄存器R0~R7,通過PSW中的RS1、RS0兩位來選擇使用哪一組,如果不選,默認(rèn)是選擇第0組。

RS1RS0組合為00時,選中第0組工作寄存器,R0~R7地址為00H~07H;

RS1RS0組合為01時,選中第1組工作寄存器,R0~R7地址為08H~0FH;

RS1RS0組合為10時,選中第2組工作寄存器,R0~R7地址為10H~17H;

RS1RS0組合為11時,選中第3組工作寄存器,R0~R7地址為18H~1FH。

類似arm的usr模式svc模式irq模式fiq模式,

psw.4 psw.3

0 0 0區(qū) r0-r7獨立

0 1 1區(qū) r0-r7獨立

1 0 2區(qū) r0-r7獨立

1 2 3區(qū) r0-r7獨立

上邊的每個區(qū)都由相同的名字r0-r7寄存器引用,但數(shù)據(jù)空間卻不同,所以各自獨立,

每組寄存器在物理上是獨立的,也就是說,一共有32個寄存器。上電后默認(rèn)是第0組,但四組寄存器的功能、優(yōu)點完全相同。r0-r7支持豐富的尋址方式,可以大大提高運(yùn)行效率。

所以,如果你有四個程序段(或者說線程)要交叉運(yùn)行,都想使用到效率很高的r0-r7,就可以讓它們各占一組,只要切換區(qū)域就行了,而不必頻繁地保護(hù)現(xiàn)場。

尋址方式:

51單片機(jī)有7種尋址方式。

1、寄存器尋址:前面提到了內(nèi)部RAM中的00H-1FH地址單元作為工作寄存器使用。一共是有32各地址單元,分成四組,每組有8個寄存器,命名為R0-R7,每次可以使用其中的一組。當(dāng)使用R0-R7來表示操作數(shù)時,就屬于寄存器尋址方式。

例如:MOV A,R0;把寄存器R0的內(nèi)容送入累加器A中

2、直接尋址:在指令中直接給出操作數(shù)地址,就屬于直接尋址方式。此時指令的操作數(shù)部分直接是操作數(shù)的地址。

例如:MOV A,2AH ;把RAM地址2AH的內(nèi)容送入累加器A中

3、立即尋址:

例如:MOV A,#3AH ;該指令就是表示把立即數(shù)3AH送入累加器A中,立即數(shù)前加上一個#,和直接尋址方式區(qū)分

4、寄存器間接尋址:若以寄存器的名稱直接給出操作數(shù)的地址,則稱為寄存器間接尋址。

例如:MOV A,@R0 ;該指令是把RO里的內(nèi)容作為地址,這個地址的數(shù)據(jù)送入累加器A,注意前面需要加@

5、變址尋址:變址尋址是以某個寄存器的內(nèi)容為基本的地址,然后在這個基址上加以地址的偏移量,才是真正的操作數(shù)地址。

例如:MOV A,@A+DPTR ;地址是A+DPTR的值,這個地址的內(nèi)容送如累加器A

6、相對尋址:相對轉(zhuǎn)移指令需要用到相對尋址方式,此時操作數(shù)部分給出的是地址的相對偏移量部分。

目的地址 = 源地址 + 指令字節(jié)數(shù) + rel(rel可正可負(fù))

例如:SJMP rel

7、位尋址:概念就不做解釋了。還是把reg52.h這個頭文件貼出來說。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉