国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

電子工程網

標題: 本來運行正常的匯編程序,為什么加了一個中斷分支子程序就不能運行? [打印本頁]

作者: lifs    時間: 2010-10-9 12:53
標題: 本來運行正常的匯編程序,為什么加了一個中斷分支子程序就不能運行?
RMRG1:     
    CLR        EA    MOV       DFLG,#8FH      LCALL     DSPL_FLG   
    LCALL     DLY1S
  RM10:     MOV        R3,#50
    MOV        R4,#2  
  RM14:     MOV        R6,#5
    ACALL     RMK0
    JZ           RM13
    LCALL     DLY0S
    MOV       R4,#2
    DJNZ      R3,RM14
    AJMP       RMRG0       NOP
    NOP
    LJMP       ERR
  RM13:     DJNZ     R4,RM14   
     MOV      R0Tr,#R0T   
     MOV      R1Tr,#R1T   
     MOV      DFLG,#0EH            LCALL      DSPL_FLG        
     LCALL     DLY1S
     AJMP     RMRG0        
     NOP
     NOP
     LJMP  ERRRMK0:      JNB      P3.2,RM11B
     MOV            P1,#0FFH            
     MOV      A,P1
     ANL      A,#0E0H
     SWAP     A
     RR      A
     CLR      C
     SUBB     A,R6
     RET
     
RM11B:      MOV            R3,#100      RM11B1:                LCALL     DLY0S
     JB      P3.2,RM10
     DJNZ     R3,RM11B1   
     AJMP           RMRG0  
     NOP
     NOP
     LJMP  ERR
作者: star2006star    時間: 2010-10-17 19:11
寫清楚點啊
作者: embcom010    時間: 2010-10-18 11:00
中斷分支子程序的主要影響有:

1、運行時序。
2、R1~R4的沖突。
3、堆棧的影響。

仔細分析一下吧。
作者: MCU_NEWER    時間: 2010-11-8 20:16
匯編相對于C語言來說,讀起來較難入腦,導致思緒不能快速清晰的建立起來。

因此,如要用匯編來寫程序,分段落、加注釋、排版對齊都是很必要的。

一行只寫一個語句,各子程序的功能是什么都要注釋明白。

不同的寄存器又是用來儲存什么量的?要注釋。

程序調用會否導致某些變量的值發生意外的改變呢?

程序調用前后是否要做、是否有做必要的現場保護、還原呢?

變量的取值是否恰當呢?特別是控制程序走向的變量,有時可能根本不可能變化達到某一個界限值。

時序是否恰當呢?

有些程序段又沒寫出來,也不知它們會對哪些變量產生什么影響。

如果可以的話,請把程序的目的寫出來,別人就更容易明白了。
作者: MCU_NEWER    時間: 2010-11-8 20:27
加注釋不只是為了給別人看,也可以方便自己日后的閱讀、修改、升級,也就是方便維護了。

事實上本人沒編過什么大程序,也就只編過幾個小小的程序,程序閱讀能力不好,所以也沒細心分析。樓上發表的是部分心得,僅供參考,希望有助于樓主發現問題所在。
作者: szw0117    時間: 2010-11-8 21:01
學習了
作者: 斑頭雁    時間: 2010-11-15 08:53
加注釋不只是為了給別人看,也可以方便自己日后的閱讀、修改、升級,也就是方便維護了。

事實上本人沒編過什么大程序,也就只編過幾個小小的程序,程序閱讀能力不好,所以也沒細心分析。樓上發表的是部分心得,僅 ...
MCU_NEWER 發表于 2010-11-8 20:27


同意,經驗之談。
作者: zls261976514    時間: 2011-1-17 17:29
加注釋不只是為了給別人看,也可以方便自己日后的閱讀、修改、升級,也就是方便維護了。

事實上本人沒編過什么大程序,也就只編過幾個小小的程序,程序閱讀能力不好,所以也沒細心分析。樓上發表的是部分心得,僅 ...
MCU_NEWER 發表于 2010-11-8 20:27
養成良好的編程習慣
作者: 奮斗六號    時間: 2011-2-5 15:44
很給力
作者: gsxpop    時間: 2011-2-15 13:22
寫得太不清楚了!!
作者: wongfu72    時間: 2011-2-15 21:25
學習了,
作者: suwxdsp@163.com    時間: 2011-4-18 21:54
匯編不加注釋,過一些天后自己都看不懂的。
作者: klyzh2003    時間: 2011-4-20 20:01
沒有注釋的匯編程序無異于天書!
作者: alpha321    時間: 2011-9-17 08:38
樓上各位都說得很有道理,特別是MCU_NEWER,發帖能遇上這么熱心的朋友不能不說是樓主的造化,可要好好珍惜呀。以后別發這種少頭沒尾的帖子了。
我看了看程序,其中樓主沒有指出所說的分支,但這里有一個明顯的問題,在RM14標記下,有個調用“ACALL      RMK0”,而在RMK10中又有一個直接跳轉到RM10的“JB       P3.2, RM10”,RM10又在RM14的前邊。這樣反復調用多次,堆棧就會溢出。
作者: pcbkey    時間: 2015-2-7 11:42
支持一下




歡迎光臨 電子工程網 (http://m.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: 欧美日韩国产一区三区 | 久久国产精品一区二区三区 | 国产精品久久久久毛片真精品 | 日本高清不卡视频 | 久久精品国产无限资源 | 国语精品91自产拍在线观看二区 | 四虎影视永久在线精品免费播放 | 99久久成人国产精品免费 | 久久青春| 尹人综合网 | 欧美成人h版影片在线观看 欧美成人h版白雪公主 | 亚洲va国产日韩欧美精品 | 精品视频一区二区三区四区五区 | 亚洲特级毛片 | 日日摸夜夜添夜夜添日韩 | 看黄网站免费 | jizz中国日本| 日本欧美一区二区三区视频麻豆 | 国产永久免费爽视频在线 | 国内精品一区二区在线观看 | 99re热这里只有精品66 | 一级做a爱片特黄在线观看 一级做a爱片就在线看 | 日韩在线第一区 | 精品一区二区久久 | 苦咖啡电视剧剧情全集免费 | 欧美区在线观看 | 亚洲专区在线播放 | 精品国产香蕉在线播出 | 亚洲天堂伦理 | 三级大片网站 | 在线视频日韩欧美 | 亚洲欧美日韩在线一区 | 国产精品九九九久久九九 | 日日噜| 黑人巨大15p | 久久久久国产精品免费免费 | 亚洲大片免费观看 | 日韩欧美精品一区二区三区 | 日本久久一区二区 | 亚洲欧洲日产国码一级毛片 | 国产久|