void delay(uint t) {while(--t);}与void delay(uint z){uint x,y for(x=z;x>0;x--)的区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/14 13:13:49

void delay(uint t) {while(--t);}与void delay(uint z){uint x,y for(x=z;x>0;x--)的区别

void delay(uint t) {while(--t);}就是执行t次空操作,一个空操作是占一个指令周期,一个指令周期占若干个机器时钟周期(和具体硬件有关).一般在单片机和dsp中,空操作为asm("Nop");所以void delay(uint t) {while(--t);}等价于
void delay(uint t) {while(--t) asm("Nop");}
void delay(uint z)
{uint x,y
for(x=z;x>0;x--);
}
我感觉好像没有写完,因为y还没有看出来是干啥用的~