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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8032|回復: 8
打印 上一主題 下一主題
收起左側

51單片機的 POP PUSH指令研究

[復制鏈接]
跳轉到指定樓層
樓主
最近在研究RTOS,在程序中看到一個 POP 7 POP 6 POP ... ,請問大家這個7是什么,POP執行之后 什么會被動了什么?



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:195446 發表于 2020-1-10 00:22 | 只看該作者
7、6、5.。。。。0應該是指工作寄存器,估計是指0組的R7、R6。。。。。R0,但POP后面直接用7表示R7的話,那必須頭文件里對R7的地址做好定義才行,其它特殊功能寄存器也是一樣。
回復

使用道具 舉報

板凳
ID:462827 發表于 2020-1-10 01:12 | 只看該作者
單步調試一下不就看得清清楚楚的么
回復

使用道具 舉報

地板
ID:158375 發表于 2020-1-10 08:53 | 只看該作者
POP PUSH指令研究: 就研究出來這樣的結果?
回復

使用道具 舉報

5#
ID:81053 發表于 2020-1-10 15:40 | 只看該作者
mffhxa 發表于 2020-1-10 00:22
7、6、5.。。。。0應該是指工作寄存器,估計是指0組的R7、R6。。。。。R0,但POP后面直接用7表示R7的話,那 ...

好的,多謝指教
回復

使用道具 舉報

6#
ID:81053 發表于 2020-1-10 15:41 | 只看該作者
hantu 發表于 2020-1-10 01:12
單步調試一下不就看得清清楚楚的么

對匯編不太熟悉,仔細調試一下
回復

使用道具 舉報

7#
ID:81053 發表于 2020-1-10 15:41 | 只看該作者
笨笨兔 發表于 2020-1-10 08:53
POP PUSH指令研究: 就研究出來這樣的結果?

抱歉,還沒有啥結果
回復

使用道具 舉報

8#
ID:401564 發表于 2020-1-11 15:20 | 只看該作者
以常用的匯編中斷處理來說吧:
PUSH          ACC                      ;把ACC壓入棧
PUSH          PSW                     ;把PSW壓入棧

---------中間是某段代碼-----
POP           PSW                     ;把棧的值彈回PSW
POP           ACC                      ;把棧的值彈回ACC
這就是匯編中的堆棧,它是一個處理事件的方
你不用管它是進入中斷還是要干嘛,你只要知道它是這么一個過程就可以了:
1,把ACC壓入棧,這個時候ACC在棧的最上面的地址,假設這個地址是:0   (PUSH          ACC)
2,把PSW壓入棧,這個時候,PSW就在剛才ACC呆的地址,ACC就被壓到了下一個地址,那么:PSW在0地址,ACC在1地址,(PUSH          PSW)
如果還有PUSH指令,之前入棧的值就會不斷的向下壓,壓過頭了,就沒了,這就是常說的"溢出"
在8051系統里,堆棧是軟件堆棧,它是由系統自動處理的,理論上來說程序空間有多大,它就能入棧多少次,但實際就100多地址可以放,足夠絕大多數的程序了
而有的單片機系統是硬件堆棧,它有的只有三四層的堆棧,也就是說它只能PUSH三四次而已,像這種可以算是堆棧資源非常有限,編程就會有要求:禁止使用遞歸,中斷里最好不有函數,處理什么東西最好是在中斷外處理
3,POP           PSW     ;這個指令是:把堆棧的最頂層的數據彈回PSW,理解這個很重要,它是把地址0的數據傳送到PSW,這是出棧的順序
4,POP           ACC     ;把地址1的數據彈回ACC,這兩條指令的順序是不能變的
總的來說,就是網上說的那樣:先進后出,自己慢慢理解一下,字打多了,我自己不知道自己在說什么了

回復

使用道具 舉報

9#
ID:835796 發表于 2021-5-20 09:42 | 只看該作者
Y_G_G 發表于 2020-1-11 15:20
以常用的匯編中斷處理來說吧:
PUSH          ACC                      ;把ACC壓入棧
PUSH          PSW                ...

說的很清楚,哈哈,領教了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表