Re: [請益] 8051利用DJNZ迴圈寫程式

看板Programming作者 (豆腐)時間18年前 (2007/05/03 16:09), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《wenher (Coke)》之銘言: :  請問利用DJNZ這個指令寫成1+2+3+4+....+49+50  :  再將總和儲存至暫存器R5,R6 我這樣寫的是對的嗎?? :    :    MOV R5,#50H : CLR R6 : LOOP: ADD R6, R5 : DA R6 : DJNZ R5,LOOP : END: SJMP END : PS:總是感覺有點怪怪 ==" : 麻煩大大解惑 MOV R5,#50 ;先讓R5的值為50 CLR A ;清除累加器(使內值=0) LOOP: ADD A,R5 ;把R5內的值+累加器內的值丟入累加器 DJNZ R5,LOOP ;R5-1如果不是0就跳至LOOP ADD A,R5 ;R5-1如果=0(當R5=1時)把R5內的值+累加器內的值丟入累加器 MOV R6,A ;把累加器A內的值丟入R6 END 很久沒寫組語了 不過我想這樣應該就可以做到你想要的功能 R6=1+2+3+4+...+49+50 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.181.135
文章代碼(AID): #16EPYoXF (Programming)
文章代碼(AID): #16EPYoXF (Programming)