问答题 下面是延时1ms的程序。如给这个程序传递一个50的数值,则可以产生约50000μs即50ms的延时。
【正确答案】应用程序:
   void msec( unsigned int x)
   {
       unsigned char j;
       while(x--)
       {
           for (j=0; j<125;j++)
           {;}
       }
   }
   main()
   {
       msec (50);
   }
【答案解析】[程序分析]
   这个程序可以用整型值产生较长的延时。根据汇编代码进行的分析表明,用j进行的内部循环大约延时8μs,程序编写得近似正确,但并不精确。不同的编译器会产生不同的延时,因此,j的上限值125应根据实验进行补偿调整。
   构成循环结构的常见语句主要有:while,do...while和for。