99久久久久国产-99久久久久国产精品免费-99久久久久久久-99久久久免费精品免费-99久久免费费视频在线观看

131 1300 0010
其他
當(dāng)前位置: 首頁(yè)>> 元件技術(shù)>>其他>>
  • 導(dǎo)航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • 單片機(jī)堆棧操作指令的用法介紹
    單片機(jī)堆棧操作指令的用法介紹
  • 單片機(jī)堆棧操作指令的用法介紹
  •   發(fā)布日期: 2019-04-08  瀏覽次數(shù): 1,951

    堆棧操作指令有兩條:

    PUSH direct

     

    POP direct

    第一條指令稱之為推入,就是將direct中的內(nèi)容送入堆棧中,第二條指令稱之為彈出,就是將堆棧中的內(nèi)容送回到direct中。推入指令的執(zhí)行過(guò)程是,首先將SP中的值加1,然后把SP中的值當(dāng)作地址,將direct中的值送進(jìn)以SP中的值為地址的RAM單元中。例:

    MOV SP,#5FH

    MOV A,#100

    MOV B,#20

    PUSH ACC

    PUSH B

    則執(zhí)行第一條PUSH ACC指令是這樣的:將SP中的值加1,即變?yōu)?0H,然后將A中的值送到60H單元中,因此執(zhí)行完本條指令后, 內(nèi)存60H單元的值就是100,同樣,執(zhí)行PUSH B時(shí),是將SP+1,即變?yōu)?1H,然后將B中的值送入到61H單元中,即執(zhí)行完本條指令后,61H單元中的值變?yōu)?0。

    單片機(jī)堆棧操作指令的用法介紹
     

    POP指令的在單片機(jī)中執(zhí)行是這樣的,首先將SP中的值作為地址,并將此地址中的數(shù)送到POP指令后面的那個(gè)direct中,然后SP減1。

    接上例:

    POP B

    POP ACC

    則執(zhí)行過(guò)程是:將SP中的值(現(xiàn)在是61H)作為地址,取61H單元中的數(shù)值(現(xiàn)在是20),送到B中,所以執(zhí)行完本條指令后B中的值是20,然后將SP減1,因此本條指令執(zhí)行完后,SP的值變?yōu)?0H,然后執(zhí)行POP ACC,將SP中的值(60H)作為地址,從該地址中取數(shù)(現(xiàn)在是100),并送到ACC中,所以執(zhí)行完本條指令后,ACC中的值是100。

    這有什么意義呢?ACC中的值本來(lái)就是100,B中的值本來(lái)就是20,是的,在本例中,的確沒(méi)有意義,但在實(shí)際工作中,則在PUSH B后一般要執(zhí)行其他指令,而且這些指令會(huì)把A中的值,B中的值改掉,所以在程序的結(jié)束,如果我們要把A和B中的值恢復(fù)原值,那么這些指令就有意義了。

    還有一個(gè)問(wèn)題,如果我不用堆棧,比如說(shuō)在PUSH ACC指令處用MOV 60H,A,在PUSH B處用指令MOV 61H,B,然后用MOV A,60H,MOV B,61H來(lái)替代兩條POP指令,不是也一樣嗎?是的,從結(jié)果上看是一樣的,但是從過(guò)程看是不一樣的,PUSH和POP指令都是單字節(jié),單周期指令,而MOV指令則是雙字節(jié),雙周期指令。更何況,堆棧的作用不止于此,所以一般的計(jì)算機(jī)上都設(shè)有堆棧,單片機(jī)也是一樣,而我們?cè)诰帉?xiě)子程序,需要保存數(shù)據(jù)時(shí),常常也不采用后面的辦法,而是用堆棧的辦法來(lái)實(shí)現(xiàn)。

    例:寫(xiě)出以下單片機(jī)程序的運(yùn)行結(jié)果

    MOV 30H,#12

    MOV 31H,#23

    PUSH 30H

    PUSH 31H

    POP 30H

    POP 31H

    結(jié)果是30H中的值變?yōu)?3,而31H中的值則變?yōu)?2。也就兩者進(jìn)行了數(shù)據(jù)交換。從這個(gè)例程能看出:使用堆棧時(shí),入棧的書(shū)寫(xiě)次序和出棧的書(shū)寫(xiě)次序必須相反,才能保證數(shù)據(jù)被送回原位,不然就要出錯(cuò)了。


  • ·上一篇:
    ·下一篇:
  • 其他關(guān)聯(lián)資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區(qū)松崗鎮(zhèn)潭頭第二工業(yè)城A區(qū)27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機(jī):131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權(quán)所有:Copyright?2010-2023 www.qingjujia.cn 電話:13113000010 粵ICP備2021111333號(hào)
    主站蜘蛛池模板: 一级一级特黄女人精品毛片| 亚洲精品97福利在线| 午夜精品在线| 欧美不卡精品中文字幕日韩| 国产精品所毛片视频| 99国产精品热久久久久久夜夜嗨| 久久视频精品53在线观看| 亚洲精品第五页中文字幕| a级国产片免费观看| 尤物在线观看网站| 亚洲中字| 成人女人a毛片在线看| 欧美成人黄色网| 国产男女乱淫真视频全程播放| 黄色动作视频| 激性欧美激情在线aa| 国产刚刚发育被强j在线播放| 久久精品国产久精国产80cm | 国产亚洲综合一区在线| 高清欧美一级在线观看| 91专区在线观看| 国产精品极品| 国产在线精品福利91香蕉| 麻豆视频免费网站| 青草五月天| 色一情一伦一区二区三| 亚洲污视频| 在线视频欧美亚洲| 91国视频在线观看| a级毛片高清免费视频| 一级黄色在线| 一级做a爰片久久毛片免费看| 尤物在线观看视频| 女18一级大黄毛片免费女人| 日韩免费一区二区三区 | 小蝌蚪在线成人免费视频| 日韩一级精品视频在线观看| 手机国产日韩高清免费看片| 亚洲欧美7777| 亚洲成人免费在线| 亚洲这里只有精品|