匯編語言軟件延時1s的實現(xiàn)方法
對于不同的計算機,因為其主頻不同,延時1s的參數(shù)也不相同,計算延時的方法如下:
計算機主頻:x (Hz)
一條LOOP語句執(zhí)行始終周期數(shù):y
所需要延時的時間:z (s)
需要執(zhí)行的語句數(shù):a
z=y*(1/x)*a
計算得到所需的執(zhí)行語句數(shù)編寫程序。
例:(計算機主頻為3GHz)
delay proc near push bx push cx mov bx,400h for1:mov cx,0ffffh for2:loop for2 dec bx jnz for1 pop cx pop bx ret delay endp
擴展知識:
單片機匯編跳轉指令延時一秒
DELAY: MOV R7,#10 ;延時1S子程序
DL1: MOV R6,#200-----1T
DL2: MOV R5,#248------1T
DJNZ R5,$
DJNZ R6,DL2
DJNZ R7,DL1
RETLP
RET
這是如何延時的呢,晶振為12MHZ為T=1us,DJNZ為雙周期指令,主要是嵌套循環(huán)延時一秒,我們看計算結果:
DJNZ R5,$-----------------------248*2=496500us
DJNZ R6,DL2----------------------(496+1+2)*200=99800us
DJNZ R7,DL1------------------------(99800+2+1)*10=998030~~1s;
總結
以上所述是小編給大家介紹的匯編語言軟件延時1s的實現(xiàn)方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
匯編語言系列之匯編實現(xiàn)各種碼制的轉換(思路詳解)
本文列出了十六進制轉二進制、十進制、ASCII碼及大小寫字母轉換的代碼,對匯編語言系列之實現(xiàn)各種碼制的轉換問題感興趣的朋友跟隨小編一起看看吧2021-11-11