




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.第第3 3章章 C51C51语言编程基础语言编程基础.1 1)机器语言)机器语言定义:处理器能直接执行的二进制代码定义:处理器能直接执行的二进制代码特点:效率高、但不易于使用特点:效率高、但不易于使用10110110 00000000 10110101 00000000ADD AADD A,#19#193.1 3.1 编程语言编程语言Keil C51Keil C51简介简介1、编程语言、编程语言2 2)汇编语言)汇编语言 定义:以助记符的形式表示机器语言定义:以助记符的形式表示机器语言 特点:速度快、体积小、但依赖于硬件体系特点:速度快、体积小、但依赖于硬件体系.3)高级语言)高级语言独立于
2、机器、面向过程的、接近于人的自然语言。独立于机器、面向过程的、接近于人的自然语言。语言:语言:FORTRAN、C语言语言特点:与硬件无关、易于交流和使用、运行效率低特点:与硬件无关、易于交流和使用、运行效率低X = X + 1;X = X + 1;编译器编译器链接器链接器X = X + 1;程序员程序员高级语言程序高级语言程序机器码机器码单片机如何执行程序指令?单片机如何执行程序指令?.Keil C51Keil C51语言是在标准语言是在标准C C的基础上,针对的基础上,针对5151单片机的硬件特点进行单片机的硬件特点进行扩展,并向扩展,并向5151单片机上移植的高效、简洁的实用高级语言。单片
3、机上移植的高效、简洁的实用高级语言。 与汇编语言相比的特点:与汇编语言相比的特点:(1)可读性好)可读性好。(2)可模块化开发。)可模块化开发。(3)可移植性好。)可移植性好。(4)生成的代码效率较低。)生成的代码效率较低。2 2、Keil C51Keil C51语言简介语言简介对于对于5151单片机,目前广泛使用的是单片机,目前广泛使用的是Keil C51Keil C51语言,简称语言,简称C51C51语言。语言。.3 3、C51C51与标准与标准C C的区别的区别(1 1)库函数的不同。库函数的不同。例如库函数例如库函数printfprintf和和scanfscanf,在标准,在标准C C
4、中,这中,这两个函数通常用于屏幕打印和接收字符,而在两个函数通常用于屏幕打印和接收字符,而在Keil C51Keil C51中,主要中,主要用于串行口数据的收发。用于串行口数据的收发。(3 3)C51C51的变量存储模式与标准的变量存储模式与标准C C中的变量存储模式不一样。中的变量存储模式不一样。标准标准C C是在通用计算机中只有一个程序和数据统一寻址的内存空间。是在通用计算机中只有一个程序和数据统一寻址的内存空间。 5151单片机存储区可分为内部数据存储区、外部数据存储区以及程序单片机存储区可分为内部数据存储区、外部数据存储区以及程序存储区。存储区。(4 4)标准标准C C语言没有处理单片
5、机中断的方法。语言没有处理单片机中断的方法。C51C51中有专门处理中断的中断函数。中有专门处理中断的中断函数。(2 2)数据类型有一定的区别。数据类型有一定的区别。在标准在标准C C的基础上又扩展了的基础上又扩展了4 4种类型。种类型。.(5 5)头文件的不同。头文件的不同。5151头文件把单片机内部的硬件资源如定时器、中断、头文件把单片机内部的硬件资源如定时器、中断、I/OI/O等所相等所相应的功能寄存器写入头文件内。应的功能寄存器写入头文件内。(6 6)程序结构的差异。程序结构的差异。由于由于5151单片机硬件资源有限,编译系统不允许太多的程序嵌套。单片机硬件资源有限,编译系统不允许太多
6、的程序嵌套。其次,其次,C51C51语言不支持标准语言不支持标准C C的递归特性。的递归特性。 4 4、Keil C51Keil C51的开发工具的开发工具Keil Vision3Keil Vision3Keil Vision3Keil Vision3是德国是德国Keil softwareKeil software公司开发的公司开发的C51C51语言开发软件。语言开发软件。这个软件集成了文件编辑处理、编译链接等功能。这个软件集成了文件编辑处理、编译链接等功能。.3.2 C513.2 C51语言程序设计基础语言程序设计基础1 1、数据类型与存储类型、数据类型与存储类型1 1)数数据据类类型型.2
7、)C51扩展的数据类型(扩展的数据类型(4种扩展的数据类型)种扩展的数据类型)(1 1)位变量)位变量bitbit bit bit的值可以是的值可以是1 1(truetrue),或),或0 0(falsefalse)。)。 bit bit 变量名;变量名;格式:格式:例如:例如:bit flag;bit flag;flag = 0flag = 0;.(2 2)特殊功能寄存器)特殊功能寄存器sfrsfr 地址单元地址单元80HFFH80HFFH之间的片内数据存储区;之间的片内数据存储区; “sfr” sfr” 数据类型占用一个内存单元;数据类型占用一个内存单元; 利用它可以访问利用它可以访问51
8、51单片机内部的所有特殊功能寄存器。单片机内部的所有特殊功能寄存器。sfr P1 = 0 x90sfr P1 = 0 x90; /定义了定义了P1P1为片内的为片内的P1P1口寄存器;口寄存器;P1 = 0 xffP1 = 0 xff; /把把P1P1口的所有输出引脚设置为高电平。口的所有输出引脚设置为高电平。例如:例如:sfr sfr 寄存器变量名寄存器变量名 = = 字节地址常数;字节地址常数;格式:格式:.sfr SBUF = 0 x99sfr SBUF = 0 x99;习题:习题: 往串行发送数据缓冲寄存器往串行发送数据缓冲寄存器SBUF写入写入80SBUF = 80SBUF = 80
9、;习题:习题: 从从P0口寄存器读取数据,存放到任意一个变量口寄存器读取数据,存放到任意一个变量X。sfr P0 = 0 x80sfr P0 = 0 x80;int xint x; x = P0 x = P0;.例如:例如:(3 3)特殊功能寄存器)特殊功能寄存器sfr16sfr16“sfr16sfr16”数据类型占两个内存单元;数据类型占两个内存单元;用于操作占两个字节的特殊功能寄存器。用于操作占两个字节的特殊功能寄存器。sfr16 DPTR = 0 x82sfr16 DPTR = 0 x82;/定义了片内定义了片内1616位数据指针寄存器位数据指针寄存器DPTRDPTR, /低低8 8位字
10、节地址为位字节地址为82H82H, /高高8 8位字节地址为位字节地址为83H83H。DPTR=0 x1234;DPTR=0 x1234;sfr16 sfr16 寄存器变量名寄存器变量名 = = 字节地址常数;字节地址常数;格式:格式:字节地址为字节地址为82H、83H存放的数据分别是多少?存放的数据分别是多少?.(4 4)特殊功能位)特殊功能位 sbitsbit 片内特殊功能寄存器的可寻址位。片内特殊功能寄存器的可寻址位。“”“”前是特殊功能寄存器的名字;前是特殊功能寄存器的名字;“”的后面数字是特殊功能寄存器可寻址位在寄存器中的位置,的后面数字是特殊功能寄存器可寻址位在寄存器中的位置,取值
11、必须是取值必须是0-70-7。 sbit sbit 位变量名位变量名 = = 特殊功能寄存器特殊功能寄存器 位位置;位位置;格式:格式:sfr PSW = 0 xd0sfr PSW = 0 xd0; /定义定义PSWPSW寄存器地址为寄存器地址为0 xd00 xd0sbit FO = PSW 5 sbit FO = PSW 5 ;/定义定义F0F0位为位为PSW.5PSW.5F0 = 0;F0 = 0;例如:例如:.习题:片内习题:片内I/OI/O口口P1P1口的口的P1.0P1.0寻址位置成高电平寻址位置成高电平 sfr sfr P1 = 0 x90 P1 = 0 x90; sbit P1_
12、0 = P10sbit P1_0 = P10; P1_0 = 1P1_0 = 1;习题:习题: 从从P2口的口的P2.7读取数据,存放到任意一个位变量读取数据,存放到任意一个位变量X。 sfr sfr P2 = 0 xA0 P2 = 0 xA0; sbit P2_7 = P27sbit P2_7 = P27; bit xbit x; x = P2_7x = P2_7; .sbitsbit 位变量名位变量名 = = 位地址常数;位地址常数; sbit CY = 0 xD7sbit CY = 0 xD7; / /* * CY CY位地址为位地址为0 xD70 xD7* */ /sbit OV =
13、0 xD2sbit OV = 0 xD2; / /* * OV OV位地址为位地址为0 xD20 xD2* */ /ifif(CY = = 1CY = = 1) 例如:例如:格式:格式:.习题:片内习题:片内I/OI/O口口P1P1口的口的P1.0P1.0寻址位置成低电平寻址位置成低电平sbit P1_0 = 0 x90sbit P1_0 = 0 x90;P1_0 = 0P1_0 = 0;在头文件在头文件AT89X51.hAT89X51.h中定义了常用的特殊功能寄存器和可寻址位。中定义了常用的特殊功能寄存器和可寻址位。#include #include sfr sfr P1 = 0 x90 P
14、1 = 0 x90; sbit P1_0 = 0 x90sbit P1_0 = 0 x90; 两者区别?两者区别? 6.3 3)数据存储类型)数据存储类型数据存储类型是指数据存放在数据存储类型是指数据存放在5151单片机的哪一个存储器空间。单片机的哪一个存储器空间。.bdatadataidatapdataxdatacode.(1 1)DATADATA区。区。 DATADATA区指片内区指片内RAMRAM的低的低128128字节的空间,可直接寻址;字节的空间,可直接寻址; 寻址是最快的,应该把经常使用的变量放在寻址是最快的,应该把经常使用的变量放在DATADATA区。区。unsigned cha
15、r unsigned char datadata system_status=0; system_status=0;unsigned int unsigned int datadata unit_id8; unit_id8;例如:例如:格式:格式: 数据类型数据类型【存储类型】【存储类型】变量名;变量名;.(2 2)BDATABDATA区。区。 BDATABDATA区是内部区是内部RAMRAM可位寻址的可位寻址的1616字节存储区(字节地址为字节存储区(字节地址为20H20H 2FH2FH)中的)中的128128个位。个位。 在这个区中声明变量就可进行位寻址。在这个区中声明变量就可进行位寻址。
16、例如:例如:unsigned char bdata status_byte;unsigned int bdata status_word;sbit stat_flag= status_byte4;if( status_word15 ) stat_flag=1; .(3 3)IDATAIDATA区。区。 IDATAIDATA区是片内区是片内RAMRAM的的0-2560-256字节的存储区,只能间接寻址,字节的存储区,只能间接寻址, 速度比直接寻址慢。速度比直接寻址慢。unsigned char idata system_status=0;float idata value; 例如:例如:.(4
17、4)PDATAPDATA区和区和XDATAXDATA区。区。 PDATAPDATA区和区和XDATAXDATA区位于片外存储区;区位于片外存储区; PDATAPDATA区指的是外部数据存储区区指的是外部数据存储区02560256字节。字节。 XDATAXDATA区指的是外部数据区区指的是外部数据区64KB64KB内的任何地址。内的任何地址。unsigned char xdata system_status=0;unsigned int pdata unit_id8;例如:例如:.(5 5)程序存储区)程序存储区CODECODE。 CODECODE区是程序存储区,储存的数据是不可改变的。区是程序
18、存储区,储存的数据是不可改变的。unsigned char unsigned char codecode a9 a9 =0 x00,0 x01,0 x02,0 x03,0 x04,0 x05,0 x06,0 x07,0 x08;=0 x00,0 x01,0 x02,0 x03,0 x04,0 x05,0 x06,0 x07,0 x08;例如:例如:.4 4)数据存储器模式)数据存储器模式C51C51编译器设定的存储器模式:编译器设定的存储器模式: SMALLSMALL、COMPACTCOMPACT和和LARGELARGE三种模式。三种模式。若声明若声明 char var1char var1;在
19、在SMALLSMALL模式下,模式下, var1var1被定位在被定位在datadata存储区;存储区;在在COMPACTCOMPACT模式下,模式下, var1var1被定位在被定位在idataidata存储区;存储区;在在LARGELARGE模式下,模式下, var1var1被定位在被定位在xdataxdata存储区中。存储区中。.2 2、C51C51语言的绝对地址访问语言的绝对地址访问C51C51语言提供了两种比较常用的访问绝对地址的方法,语言提供了两种比较常用的访问绝对地址的方法,对片内对片内RAMRAM、片外、片外RAMRAM及及I/OI/O进行访问。进行访问。绝对地址绝对地址.1)
20、绝对宏)绝对宏C51编译器提供了一组宏定义对编译器提供了一组宏定义对code、data、pdata和和xdata空间空间进行绝对寻址。这组宏定义放在进行绝对寻址。这组宏定义放在absacc.h头文件中:头文件中:CBYTE 以字节形式对以字节形式对code区寻址;区寻址;CWORD 以字形式对以字形式对code区寻址;区寻址;DBYTE 以字节形式对以字节形式对data区寻址;区寻址;DWORD 以字形式对以字形式对data区寻址;区寻址;XBYTE 以字节形式对以字节形式对xdata区寻址;区寻址;XWORD 以字形式对以字形式对xdata区寻址;区寻址;PBYTE 以字节形式对以字节形式对
21、pdata区寻址;区寻址;PWORD 以字形式对以字形式对pdata区寻址。区寻址。#define #define 变量名变量名 绝对宏绝对宏 字节地址字节地址 格式格式绝对宏绝对宏.【例】片内【例】片内RAMRAM、片外、片外RAMRAM定义的程序如下:定义的程序如下:#include#include#define PORTE XBYTE0 xFFC0 #define PORTE XBYTE0 xFFC0 / /* *将将PORTEPORTE定义为外部定义为外部I/OI/O, 地址为地址为0 xFFC00 xFFC0* */ /#define NRAM DBYTE0 x40 #define
22、NRAM DBYTE0 x40 / /* *将将NRAMNRAM定义为片内定义为片内RAMRAM, 地址为地址为0 x400 x40* */ /main( )main( ) PORTE=0 x3D; PORTE=0 x3D; NRAM=0 x01;NRAM=0 x01; / /* *数据数据3DH3DH写入地址写入地址0 xFFC00 xFFC0的外部的外部I/O I/O PORTE PORTE * */ / /* *将数据将数据01H01H写入片内写入片内RAMRAM的的40H40H单元单元* */ /.习题习题 使用绝对宏将片内使用绝对宏将片内RAM 20HRAM 20H的字节地址单元全部
23、置的字节地址单元全部置1 1。#include#include#define M DBYTE0 x0020 #define M DBYTE0 x0020 / /* *将将M M定义为外部定义为外部RAMRAM, 地址为地址为0 x00200 x0020* */ /main( )main( ) M=0 xff; M=0 xff; .习题:习题: 使用绝对宏读取片外使用绝对宏读取片外RAM F000HRAM F000H字节地址单元的内容。字节地址单元的内容。#include#include#define WRAM XBYTE0 xF000 #define WRAM XBYTE0 xF000 mai
24、n( )main( ) char x char x; x = WRAM;x = WRAM; 7.2 2)_at_at_关键字关键字使用关键字使用关键字_at_at_可对指定的存储器空间的绝对地址进行访问。可对指定的存储器空间的绝对地址进行访问。格式:格式: 存储类型存储类型 数据类型数据类型 变量名变量名 _at_ _at_ 地址常数;地址常数;地址常数:指定变量的绝对地址,位于存储器空间之内;地址常数:指定变量的绝对地址,位于存储器空间之内;使用使用_at_at_定义的变量必须为全局变量。定义的变量必须为全局变量。.【例】使用关键字【例】使用关键字_at_at_实现绝对地址的访问。实现绝对地
25、址的访问。data unsigned char y1 _at_ 0 x50; /data unsigned char y1 _at_ 0 x50; /* *在在data data 区定义字节变量区定义字节变量 y1y1,地址为,地址为50H50H* */ /xdata unsigned int y2 _at_ 0 x4000; /xdata unsigned int y2 _at_ 0 x4000; /* *在在xdataxdata区定义字变量区定义字变量 y2y2,地址为,地址为4000H4000H* */ /void main(void)void main(void) y1=0 xff;
26、y1=0 xff; y2=0 x1234; y2=0 x1234; while(1); while(1); .习题:使用习题:使用关键字关键字_at_at_读取片内读取片内RAM 60HRAM 60H单元的内容。单元的内容。data unsigned char M _at_ 0 x60;data unsigned char M _at_ 0 x60;void main(void)void main(void) unsigned char y ; unsigned char y ; y=M y=M; .【例】【例】使用关键字使用关键字_at_at_将片外将片外RAM 2000HRAM 2000H
27、开始的连续开始的连续2020个字节单元清个字节单元清0 0。void main(void)void main(void) unsigned char i; unsigned char i; for(i=0; i20; i+) for(i=0; i20; i+) bufferi=0 bufferi=0; xdata unsigned char buffer20 _at_ 0 x2000;xdata unsigned char buffer20 _at_ 0 x2000;.data unsigned char buffer8 _at_ 0 x40;data unsigned char buffer
28、8 _at_ 0 x40;void main(void)void main(void) unsigned char j ; unsigned char j ; for(j=0; j8; j+) for(j=0; j y; R = x y;.3 3)逻辑运算符)逻辑运算符逻辑表达式逻辑表达式int x=0;int x=0;int y=1;int y=1;int R;int R;R = x & y;R = x & y;.4)位运算符)位运算符01001000 01001000 & & 11111111 1111111100001000 00001000 2 2010
29、01001 01001001 | | 11111111 11111111.01001000 01001000 & & 00110111 0011011101000000 01000000 | | 11111111 1111111100001000 00001000 y ) max=x; if( xy ) max=x; 比较变量比较变量x x和变量和变量y y,如果,如果xyxy,则把,则把 x x 赋给变量赋给变量maxmax。习题:比较变量习题:比较变量x x和变量和变量y y,如果,如果x x和和y y相等,则把相等,则把0 0赋给变量赋给变量maxmax。if( x =
30、= y ) max=0; if( x = = y ) max=0; .格式:格式:if(if(表达式表达式) ) 语句语句1 1; else else 语句语句2 2; .if (xy) max=x; else max=y; 比较变量比较变量x x和变量和变量y y, 如果如果xyxy, 则把则把 x x 赋给变量赋给变量maxmax;否则把否则把 y y 赋给变量赋给变量maxmax。.习题:比较变量习题:比较变量x x和变量和变量y y,把二者最小值赋给变量,把二者最小值赋给变量minmin;if (xy) min=y; else min=x; .习题:如果变量习题:如果变量x x满足关系
31、满足关系10 x2010 x10)&(x10)&(x20)) ) y=1 y=1; else else y=0; y=0; 9.void main( )void main( ) sfr P2=0 xA0 sfr P2=0 xA0; sfr P1=0 x90sfr P1=0 x90; sbit P24=P24sbit P24=P24; sbit P10=P10sbit P10=P10; 习题:如果读取习题:如果读取P2P2口的口的P2.4P2.4位为位为1 1,则把,则把P1P1口的口的P1.0P1.0置成置成0 0。 if(P24=1) if(P24=1) P10=0 P10=
32、0; .if(if(表达式表达式1) 1) 语句语句1 1;else if (else if (表达式表达式2) 2) 语句语句2 2; else if(else if(表达式表达式n) n) 语句语句n n;else else 语句语句n+1n+1;多分支多分支ifif语句语句0表达式表达式1 表达式表达式2 表达式表达式n语句语句n+100语句语句n 语句语句2 语句语句1 非非0 非非0 非非0 .当成绩当成绩9090时,时, 输出输出verygoodverygood,当当8080成绩成绩9090时,时, 输出输出goodgood, 当当6060成绩成绩8080时,时, 输出输出pass
33、pass,当成绩当成绩60=90) printf(“very good);if (score=90) printf(“very good);else if (score=80) printf(“good);else if (score=80) printf(“good); else if (score=60) printf(“pass); else if (score=60) printf(“pass); else printf(“fail); else printf(“fail);.多分支多分支switchswitch语句语句switch (switch (表达式表达式1) 1) case
34、case 常量表达式常量表达式1 1: 语句语句1 1; break break; case case 常量表达式常量表达式2 2: 语句语句2 2; break break; case case 常量表达式常量表达式n n: 语句语句n n; break break; defaultdefault: 语句语句n+1n+1; 格式:格式:.switchswitch表达式表达式1 1语句语句1 1语句语句2 2语句语句n n语句语句n+1n+1式式1 1式式2 2式式n ndefaultdefaultcasecase .switch ( key ) switch ( key ) case 1ca
35、se 1: y=1y=1; breakbreak; case 2case 2: y=2; breaky=2; break;case 3case 3: y=4y=4; breakbreak; defaultdefault: ; ; 在单片机程序设计中,常用在单片机程序设计中,常用switchswitch语句作为键盘中按键的判别。语句作为键盘中按键的判别。当按下键的键号变量当按下键的键号变量key=1key=1,则变量,则变量y=1y=1; 键号变量键号变量key=2key=2,则变量,则变量y=2y=2; 键号变量键号变量key=4key=4,则变量,则变量y=3y=3; 没有按下键,没有按下键
36、, 则变量则变量y y不变。不变。.key=2;key=2;switch ( key ) switch ( key ) case 1case 1: y=1y=1; case 2case 2: y=2; y=2; case 3case 3: y=4y=4; defaultdefault: ; ; 习题:读程序执行的结果习题:读程序执行的结果 y =y =?.2 2)循环结构控制语句)循环结构控制语句whilewhile(表达式)(表达式) 循环体;循环体; 格式:格式:表达式表达式循环体循环体假假(0)真真(非非0)先判断表达式,先判断表达式,后执行循环体。后执行循环体。whilewhile语句
37、语句.main()main() int i=0; int i=0; int r; int r; while while(i3i3) i+ i+ ; y=i; y=i; i+i+执行几次?执行几次?y =y =?r = 3r = 3习题:读程序执行的结果习题:读程序执行的结果 y =y =?.main()main() int i=3; int i=3; int r; int r; while while(i6i6) i+ i+ ; y=i; y=i; y =y =?习题:读程序执行的结果习题:读程序执行的结果 y =y =?.dodo 循环体;循环体; whilewhile(表达式);(表达式)
38、;格式:格式:表达式表达式循环体循环体假假(0)真真(非非0);不可省略!不可省略!切记!切记!先执行循环体,先执行循环体,后判断表达式。后判断表达式。do-whiledo-while语句语句.main()main() int i=0; int i=0; int y; int y; do do i+ i+; while (i3); while (i3); y=i; y=i; i+i+执行几次?执行几次?y =y =?习题:读程序执行的结果习题:读程序执行的结果 y =y =?.main()main() int i=0; int i=0; int y=0; int y=0; do do i+ i
39、+; y= y + i;y= y + i; while (y20); while (y20); 习题:读程序执行的结果习题:读程序执行的结果 y =y =?.forfor(表达式(表达式1 1;表达式;表达式2 2;表达式;表达式3 3) 语句;语句; 格式:格式:forfor语句语句.main()main() int i, y; int i, y; y=0; y=0; for(i=1;i4;i+) for(i=1;i4;i+) y = y + i y = y + i; y = y = ?习题:读程序执行的结果习题:读程序执行的结果 y =y =?.main()main() int i, y;
40、 int i, y; y=1; y=1; for( i=2; i6 ; i+ ) for( i=2; i6 ; i+ ) y = y + i y = y + i; y = y = ?习题:读程序执行的结果习题:读程序执行的结果 y =y =?.3 3)breakbreak语句和语句和continuecontinue语句语句breakbreak功能:功能: 跳出跳出switchswitch结构;结构; 在循环语句中在循环语句中, ,终止并跳出本层循环。终止并跳出本层循环。continuecontinue功能:功能: 结束本次循环,跳过本层循环体中尚未执行的语句,结束本次循环,跳过本层循环体中尚未
41、执行的语句, 执行循环体的判断。执行循环体的判断。.#define PI 3.1415main( ) int r; float area; for(r=1;r100) break; printf(r=%d,area=%.2fn,r,area); 计算计算r=1r=1到到r=10r=10的圆面积,直到面积大于的圆面积,直到面积大于100100时停止。时停止。运行结果:运行结果:r=1,area=3.14r=2,area=12.57r=3,area=28.27r=4,area=50.26r=5,area=78.54结束整个结束整个for循环循环.把把100100200200之间不能被之间不能被3
42、3整除的数输出整除的数输出 。main( )main( ) int n; int n; for(n=100;n=200;n+) for(n=100;n=200;n+) if(n%3= =0) if(n%3= =0) continue;continue; printf(“%d ,n); printf(“%d ,n); 结束本次循环结束本次循环,循环体的剩余语句被忽略循环体的剩余语句被忽略,执行表达式执行表达式3,进入下一循环。,进入下一循环。.main( ) int n; for(n=100;n=200;n+) if(n%3=0) break; printf(“%d ,n); 习题:读程序执行的
43、结果?习题:读程序执行的结果?.习题:循环检测习题:循环检测P1.0P1.0引脚,只有检测引脚,只有检测P1.0P1.0为低电平时,循环结束。为低电平时,循环结束。sfr P1=0 x90;sbit P10=P10;main( ) while(1) if(P10=0) break; .5 5、数组、数组数组是用来存储一组相同数据类型的数据结构。数组是用来存储一组相同数据类型的数据结构。一维数组格式:一维数组格式:数据类型数据类型变量名变量名 N ;int a 10;int a5 = 1, 2, 3, 4, 5 int a5 = 1, 2, 3, 4, 5 ;初始化:初始化:char b 10;.求下列数组的和。求下列数组的和。int a5 = 1, 2, 3, 4, 5 int a5 =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 路基技术员试题及答案
- 社区护理-学自学考试分章节复习试题(含答案1-4章)
- 2025年药店药品采购协议范本
- 2025设计师标准劳动合同书
- 2025公司终止合同证明样本
- 2025年春季部编版初中数学教学设计八年级下册第2课时 正比例函数的图像与性质
- 2025企业购房合同协议书范本
- 公司餐厅安全知识培训课件
- 公司财务知识培训的意义
- 公司财务报税知识培训课件
- 实验中学初一新生分班考试数学试卷附答案
- 施工组织设计施工总体部署完整版
- TUPSW微机控制电力专用不间断电源(UPS)系统使用说明书
- 天津电网规划设计技术原则
- YY 0054-2010血液透析设备
- LY/T 2383-2014结构用木材强度等级
- GB/T 8017-2012石油产品蒸气压的测定雷德法
- GB/T 528-2009硫化橡胶或热塑性橡胶拉伸应力应变性能的测定
- 中日关系历史
- 2023年江苏省中学生生物学竞赛(奥赛)初赛试题和答案
- DB32-T 3129-2016适合机械化作业的单体钢架塑料大棚 技术规范-(高清现行)
评论
0/150
提交评论