C51单片机循环语句(9页).doc
《C51单片机循环语句(9页).doc》由会员分享,可在线阅读,更多相关《C51单片机循环语句(9页).doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-C51单片机循环语句-第 9 页C51单片机循环语句循环语句是几乎每个程序都会用到的,它的作用就是用来实现需要反复进行多次的操 作。如一个 12M 的 51 芯片应用电路中要求实现 1 毫秒的延时,那么就要执行 1000 次空语句 才能达到延时的目的(当然能使用定时器来做,这里就不讨论),如果是写 1000 条空语 句那是多么麻烦的事情,再者就是要占用很多的存储空间。我们能知道这 1000 条空语句, 无非就是一条空语句重复执行 1000 次,因此我们就能用循环语句去写,这样不但使程序结构清晰明了,而且使其编译的效率大大的提高。在 C 语言中构成循环控制的语句有 while,do-while
2、,for 和 goto 语句。同样都是起到循环作用,但具体的作用和使用方法又大不一 样。我们具体来看看。goto 语句这个语句在很多高级语言中都会有,记得小时候用 BASIC 时就很喜欢用这个语句。它是 一个无条件的转向语句,只要执行到这个语句,程序指针就会跳转到 goto 后的标号所在的 程序段。它的语法如下:goto 语句标号; 其中的语句标号为一个带冒号的标识符。示例如下void main(void)unsigned char a;start: a+;if (a=10) goto end;goto start;end:;上面一段程序只是说明一下 goto 的使用方法,实际编写很少使用这样
3、的手法。这段程序的意思是在程序开始处用标识符“start:”标识,表示程序这是程序的开始,“end:”标识程序的 结束,标识符的定义应遵循前面所讲的标识符定义原则,不能用 C 的关键字也不能和其它变 量和函数名相同,不然就会出错了。程序执行 a+,a 的值加 1,当 a 等于 10 时程序会跳到 end 标识处结束程序,不然跳回到 start 标识处继续 a+,直到 a 等于 10。上面的示例说明 goto 不但能无条件的转向,而且能和 if 语句构成一个循环结构,这些在 C 程序员的程 序中都不太常见,常见的 goto 语句使用方法是用它来跳出多重循环,不过它只能从内层循环 跳到外层循环,不
4、能从外层循环跳到内层循环。在下面说到 for 循环语句时再略为提一提。 为何大多数 C 程序员都不喜欢用 goto 语句?那是因为过多的使用它时会程序结构不清晰,过多的跳转就使程序又回到了汇编的编程风格,使程序失去了 C 的模块化的优点。while 语句while 语句的意思很不难理解,在英语中它的意思是“当的时候”,在这里我们可 以理解为“当条件为真的时候就执行后面的语句”,它的语法如下:while (条件表达式) 语句;使用 while 语句时要注意当条件表达式为真时,它才执行后面的语句,执行完后再次回到 while 执行条件判断,为真时重复执行语句,为假时退出循环体。当条件一开始就为假时
5、, 那么 while 后面的循环体(语句或复合语句)将一次都不执行就退出循环。在调试程序时要注意 while 的判断条件不能为假而造成的死循环,调试时适当的在 while 处加入断点,也许 会使你的调试工作更加顺利。当然有时会使用到死循环来等待中断或 IO 信号等,如在第一 篇时我们就用了 while(1)来不停的输出“Hello World!”。下面的例子是显示从 1 到 10 的累 加和,读者能修改一下 while 中的条件看看结果会如果,从而体会一下 while 的使用方法。#include #include void main(void)unsigned int I = 1;unsig
6、ned int SUM = 0; /设初值SCON = 0x50; /串行口方式 1,允许接收TMOD = 0x20; /定时器 1 定时方式 2TCON = 0x40; /设定时器 1 开始计数TH1 = 0xE8; /11.0592MHz 1200 波特率TL1 = 0xE8; TI = 1;TR1 = 1; /启动定时器while(I=10)SUM = I + SUM; /累加printf (%d SUM=%dn,I,SUM); /显示I+;while(1); /这句是为了不让程序完后,程序指针继续向下造成程序“跑飞”/最后运行结果是 SUM=55;do while 语句do while
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C51 单片机 循环 语句
限制150内