微控制器裡的DPTR和PC分別代表什麼

時間 2022-02-04 04:25:02

1樓:千鋒教育

dptr資料指標

資料指標(dptr)是某些微控制器中一個功能比較特殊的暫存器,是一個16位的特殊功能暫存器, 其高位位元組暫存器用dph表示,低位位元組暫存器用dpl表示,dptr既可以作為一個16位的暫存器來處理,也可以作為兩個獨立的8位暫存器來使用。主要功能是存放16位地址,作為片外ram定址用的地址暫存器(間接定址),故稱資料指標,也可以將外部ram中地址的內容傳送到內部ram的地址所指向的內容中。

2.  pc程式指標:

pc——程式計數器,功能:用來指示下一條指令的地址(邏輯地址即偏移量),一般情況下,系統指示對其進行加1操作,擔當遇到轉移指令,如jmp,call,loop等時系統就會將跳轉到的指令地址儲存在pc中

2樓:匿名使用者

dptr是一個資料指標,pc是程式計數器指令movc a,@a+dptr的意思是:將dptr的值加上acc的值,並將該結果所指的程式儲存器地址的資料送入acc。該指令和當前的pc(程式計數器)值無關,例:

若執行前,dptr=0300h(該值是自己賦予的),acc=18h,[0318h]=0abh,則執行後,acc=0abh,dptr不變,movc a,@a+pc的意思是:將pc(程式計數器)的值加上acc的值,並將該結果所指的程式儲存器地址的資料送入acc,該指令和dptr無關,pc(程式計數器)值則因為該條指令的位置不同而不同,故該條指令在程式的不同位置,其執行結果是不同的。其餘的同上一條指令

3樓:匿名使用者

dptr是一個16位的暫存器,因為是16位,所以他的範圍是0-0xffff就是0-64k的範圍。那麼就可以通過它來間接定址訪問內部或外部的儲存器(不管是程式儲存器,還是資料儲存器。)。

而pc則是程式計數器,也是一個16位的計數器。每過一個機器週期,pc就會加一。它裡面的內容存的是cpu當前執行的指令存在rom中的地址,所以movc a,@a+pc在執行程式的時候,因為pc在不同時刻裡面的內容是不一樣的。

4樓:匿名使用者

dptr: 資料指標, 是用來提取儲存在rom上的**資料的。pc :

程式計數器 也稱指令計數器,你可以把它理解為:指令位置暫存器,每執行完一條指令它會自動+1,即告訴cpu下一條需要執行的指令在rom上的位置。

5樓:匿名使用者

dptr是一個16位暫存器,是用來存放16位二進位制數的,pc是當前程式指標,這診所指向的位置為當前所知性的語句所在的儲存器。

51微控制器中程式指標pc和資料指標dptr各自有什麼用途?電路復位後,二者的值各是多 少?

6樓:川越時空o等你

程式計數器pc(program counter)

程式計數器在物理上是獨立的,它不屬於特殊內部資料儲存器塊中。pc是一個16位的計數器,

用於存放一條要執行的指令地址,定址範圍為64kb,pc有自動加1功能,即完成了一條指令的執行後,其內容自動加1。pc本身並沒有地址,因而不可定址,使用者無法對它進行讀寫,但是可以通過轉移、呼叫、返回等指令改變其內容,以控制程式按我們的要求去執行。

復位後為0000h(16位)

資料指標(dptr)

資料指標為16位暫存器,程式設計時,既可以按16位暫存器來使用,也可以按兩個8位暫存器來使用,即高位位元組暫存器dph和低位位元組dpl。

dptr主要是用來儲存16位地址,當對64kb外部資料儲存器定址時,可作為間址暫存器使用,此時,使用如下兩條指令:

movx a, @dptr

movx @dptr, a

在訪問程式儲存器時,dptr可用來作基址暫存器,採用基址+變址定址方式訪問程式儲存器,這條指令常用於讀取程式儲存器內的**資料。

movc a, @a+@dptr

復位後為0000h(16位)

說明51微控制器中程式指標pc和資料指標dptr各自的用途,電路復位後,二者的值各是多 少?

7樓:川越時空o等你

程式計數器pc(program counter)

程式計數器在物理上是獨立的,它不屬於特殊內部資料儲存器塊中。pc是一個16位的計數器,

用於存放一條要執行的指令地址,定址範圍為64kb,pc有自動加1功能,即完成了一條指令的執行後,其內容自動加1。pc本身並沒有地址,因而不可定址,使用者無法對它進行讀寫,但是可以通過轉移、呼叫、返回等指令改變其內容,以控制程式按我們的要求去執行。

復位後為0000h(16位)

資料指標(dptr)

資料指標為16位暫存器,程式設計時,既可以按16位暫存器來使用,也可以按兩個8位暫存器來使用,即高位位元組暫存器dph和低位位元組dpl。

dptr主要是用來儲存16位地址,當對64kb外部資料儲存器定址時,可作為間址暫存器使用,此時,使用如下兩條指令:

movx a, @dptr

movx @dptr, a

在訪問程式儲存器時,dptr可用來作基址暫存器,採用基址+變址定址方式訪問程式儲存器,這條指令常用於讀取程式儲存器內的**資料。

movc a, @a+@dptr

復位後為0000h(16位)

8樓:尚雲社

pc是程式指標,dptr是資料指標,上電覆位的時候都是0

51微控制器的pc值怎麼算,51微控制器中如何進行相對定址?pc值怎麼計算?rel又怎麼給

鈺瀟 a 50h sp 50h 51h 30h 52h 50h pc 5030h a 50h sp 50h 因為在程式中,sp減了兩次,後來又加了兩次,在程式最後ret有在返回的時候減了兩次,即地址出棧,故最終結果是50h。51h 30h 52h 50h 因為ret指令返回時,出棧的結果是高地址 5...

微控制器的程式計數器PC的構成,微控制器中的程式計數器PC用來做什麼

他就是一個單元,只是這個單元裝的是地址而已。給你舉個通俗的例子,假設你是一個網咖唯一的網管,任務是負責網咖600號電腦的檢查。你上班開始,就從1號電腦檢查,有問題維修,沒問題就檢查2號,接著是3號。檢查第8號機的時候,8號機主告訴你說 19號機有問題,這個時候,你離開8號機之後,不是去9號,而去19...

arm與微控制器的區別,微控制器和ARM區別

arm如果不跑系統的話,也是一個微控制器,如果執行作業系統,處理能力更強! 0427付強 arm是一種處理器核心,它可以被植入微控制器,也可以不使用微控制器來執行。微控制器可以使用arm核心,也可以不使用。 一萬光年 內部架構,時脈頻率,片內資源等方面 微控制器和arm區別 千鋒教育 微控制器學名微...