看板 ASM 關於我們 聯絡資訊
最近再複習8051 但因為年代有點久遠 而且現在看的書也並不是當初用的那本 所以書上有些看不太懂 DELAY20MS: MOV R6,#40 D1: MOV R5,#248 DJNZ R5,$ DJNZ R6,D1 RET 請問$是什麼意思呢? 是要跳躍到哪裡去了? 請問如何精確地寫出要延遲20MS秒呢? 這當中要怎麼推算呢? 程式碼為何給R6 資料值40 然後又給R5 資料值248 -- 吳倩蓮是我見過最平凡的小龍女! 最靠杯的是,我第一次看神屌俠侶,就是任賢齊版的。 害我以為原來小龍女長相不過就這麼普通。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.125.226.169
james732:沒記錯的話 $ 是目前位置的意思 10/22 16:47
james732:DJNZ R5,$ 就是一直執行,減少 R5 至等於零再往下跑 10/22 16:47
james732:http://nopaste.csie.org/6eb21 你的程式就是這樣 10/22 16:51
james732:它是利用 busy loop 來消耗時間 10/22 16:52
LinuxC:40*248? 為什麼等於20m秒呢? 一個指令是幾秒呀? 10/22 16:57
easypro:看你震盪器與51類型 來看是單周期指令還是多週期指令來算 10/22 17:15