如何在C语言里使用DJNZ direct,rel指令?


答:DJNZ是一条很好用的指令,可以用作软件延时,也可以用在循环结构里.以下的结构在C语言里被编译成DJNZ指令:

unsigned char delay;

 

 

c语言 反汇编  

delayagain: delay--;

if(delay!=0) goto delayagain

DJNZ delay,delayagain  

delay2:

th0=0;

tl0=0;

delay--;

if(delay!=0)goto delay2

 

delay2:


MOV TH0,#0

MOV TL0,#0

DJNZ delay,delay2