1. 單片機裡面的pc值是什麼意思
pc總是指向下一條指令的首地址的。但是在返回的時候得看堆棧中的數了。上面程序執行完之後:
例如:
(A)=50H;
sp=50H(因為在程序中,sp減了兩次,後來又加了兩次,在程序最後ret有在返回的時候減了兩次,即地址出棧,故最終結果是50h。
(51h)=30h;
(52h)=50h;
因為ret指令返回時,出棧的結果是高地址=(52h)=50h;而低地址=(51h)=30h;故最終結果pc值是5030h;
(1)單片機求pc值擴展閱讀
單片機在電子技術中的開發,主要包括CPU開發、程序開發、 存儲器開發、計算機開發及C語言程序開發,同時得到開發能夠保證單片機在十分復雜的計算機與控制環境中可以正常有序的進行,這就需要相關人員採取一定的措施,下文是筆者的一些簡單介紹:
(1)CPU開發。開發單片機中的CPU匯流排寬度,能夠有效完善單片機信息處理功能緩慢的問題,提高信息處理效率與速度,開發改進中央處理器的實際結構,能夠做到同時運行2-3個CPU,從而大大提高單片機的整體性能。
(2)程序開發。嵌入式系統的合理應用得到了大力推廣,對程序進行開發時要求能夠自動執行各種指令,這樣可以快速准確地採集外部數據,提高單片機的應用效率。
(3)存儲器開發。單片機的發展應著眼於內存,加強對基於傳統內存讀寫功能的新內存的探索,使其既能實現靜態讀寫又能實現動態讀寫,從而顯著提高存儲性能。
(4)計算機開發。進一步優化和開發單機片應激即分析,並應用計算機系統,通過連接通信數據,實現數據傳遞。
(5)C語言程序開發。優化開發C語言能夠保證單片機在十分復雜的計算機與控制環境中,可以正常有序的進行,促使其實現廣泛全面的應用。
2. 51單片機,可以通過匯編語言獲取當前pc值嗎
不能,因PC寄存器是不可讀的。
只有在響應中斷或調用子程序,才將PC值即斷點地址入棧保護,這時讀堆棧數據可獲取斷點地址。但是,想隨時獲取PC值是不能的。
3. 51單片機的 pc值怎麼算
A=( 50h ),SP=( 50h ),(51H)=( 30h ),(52H)=(50h ),PC=( 5030h )
pc總是指向下一條指令的首地址的。但是在返回的時候得看堆棧中的數了。上面程序執行完之後:
(A)=50H;
sp=50H(因為在程序中,sp減了兩次,後來又加了兩次,在程序最後ret有在返回的時候減了兩次,即地址出棧,故最終結果是50h。
(51h)=30h;
(52h)=50h;
因為ret指令返回時,出棧的結果是高地址=(52h)=50h;而低地址=(51h)=30h;故最終結果pc值是5030h;
(3)單片機求pc值擴展閱讀:
51單片機功能特性
1、可以模擬63K程序空間,接近64K 的16位地址空間;
2、可以模擬64Kxdata 空間,全部64K 的16位地址空間;
3、可以真實模擬全部32 條IO腳;
4、完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作;
5、可以使用C51語言或者ASM匯編語言進行調試 ;
6、可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值;
7、可選 使用用戶晶振,支持0-40MHZ晶振頻率;
8、片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬;
9、可以模擬雙DPTR 指針;
10、可以模擬去除ALE 信號輸出. ;
11、自適應300-38400bps 的所有波特率通訊;
12、體積非常細小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障;
13、模擬插針採用優質鍍金插針,可以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. ;
14、模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障;
15、RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。
4. 單片機裡面的pc值是什麼意思
PC就是程序計數器,就是指揮程序從哪裡執行。如果是8位機,每個存儲單元存放一個位元組,指令有單位元組、雙位元組和3位元組。單片機復位時,PC=0000H,而後每執行一條指令,PC根據指令的位元組數增加。
如圖:最前面的就是PC值
5. 單片機:PC的值是為什麼能幫忙講解一下么
pc:程序計數器。指示下條要執行語句的位置。程序運行的時候從00的位置執行第一條指令,然後跳到了42h的位置,mov sp,#00h這條指令占兩個位元組的空間,所以pc=42h
6. 單片機pc值怎麼計算。
PC始終指向當前要執行程序的地址。
7. 51單片機,可以通過匯編語言獲取當前pc值嗎
指令上市沒有區別的,89c51是80c51的升級版,內部功能模塊都是差不多的,一般使用89c51的多,做實驗都沒用過80c51的、
8. 51單片機 pc怎麼算
在51單片機裡面,pc永遠指向下一條指令的首地址,計算方法就是:當前執行的指令的首地址+本指令所佔的位元組長度。
9. 在匯編語言寫單片機的程序的時候,如何知道當前的PC指針是多少
當前PC指針的值,可以通過一定的方法來獲得,比如如果使用LCALL指令,那麼單片機執行過程是:保護現場,將當前PC壓入堆棧,當程序返回時,再彈出該保護的PC,由此,我們就可以獲得當前的PC,具體程序如下:
........
LCALL GETPC ;調用一個子程序以獲得當前PC值
...........
GETPC:
POP ACC ;取得PC高八位
POP B ;取得PC低八位
PUSH B ;恢復SP
PUSH ACC ;恢復SP
......
RET
10. 單片機AJMP指令的PC值具體是怎麼算的 例如這一題
pc=0100h
AJMP START ;是跳轉到START標號的地址
START 標號的地址 前面已經寫了,是 ORG 0100H