书签 分享 收藏 举报 版权申诉 / 62
上传文档赚钱

类型第3章单片机C语言课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:5177078
  • 上传时间:2023-02-16
  • 格式:PPT
  • 页数:62
  • 大小:347KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第3章单片机C语言课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    单片机 语言 课件
    资源描述:

    1、单片机单片机C语言语言C51特点n结构化语言结构化语言n丰富的数据类型丰富的数据类型n便于维护管理便于维护管理n与汇编语言相比,与汇编语言相比,C语言的优点如下:语言的优点如下:不要求编程者详细了解单片机的指令系统,但需了解不要求编程者详细了解单片机的指令系统,但需了解单片机的存储器结构;单片机的存储器结构;寄存器分配、不同存储器的寻址及数据类型等细节可寄存器分配、不同存储器的寻址及数据类型等细节可由编译器管理;由编译器管理;结构清晰,程序可读性强;结构清晰,程序可读性强;编译器提供了很多标准库函数,具有较强的数据处理编译器提供了很多标准库函数,具有较强的数据处理能力。能力。C51-1:C51

    2、基本结构基本结构n/功能:控制八个信号灯闪烁程序功能:控制八个信号灯闪烁程序n#include/定义了定义了MCS-52单片机的特殊功能寄存器单片机的特殊功能寄存器nvoid delay(unsigned char i);/延时函数声明延时函数声明nvoid main()/主函数主函数nn while(1)n P1=0 x00;/点亮八个点亮八个LEDn delay(200);/延时延时n P1=0 xff;/熄灭八个熄灭八个LEDn delay(200);/延时延时n nn/函数名:函数名:delayn/函数功能:实现软件延时函数功能:实现软件延时n/形式参数:形式参数:unsigned c

    3、har i;nvoid delay(unsigned char i)/延时函延时函数,无符号字符型变量数,无符号字符型变量i为形式参数为形式参数nn unsigned char j,k;/定义无符号字符型变量定义无符号字符型变量j和和kn for(k=0;ki;k+)/双重双重for循环语句实现软件延时循环语句实现软件延时n for(j=0;j=!=&|!&|?:,&sizeof (数据类型标识符)类型类型种类种类算术运算符算术运算符赋值运算符赋值运算符关系运算符关系运算符逻辑运算符逻辑运算符位运算符位运算符条件运算符条件运算符逗号运算符逗号运算符其他运算符其他运算符5 表达式的有关概念n什么

    4、是表达式什么是表达式由由运算符运算符将运算对象连接成的式子,它描述了将运算对象连接成的式子,它描述了一个具体的求值运算过程。一个具体的求值运算过程。n计算表达式的值计算表达式的值按照运算符的运算规则求值按照运算符的运算规则求值求值时注意求值时注意运算符的优先级和结合性运算符的优先级和结合性例如:n表达式:b=(+a)-2a/=a*=(a=2)f=abc-a|+b&c+max=ab?a:b a=3,a+=3,a*a 1/(float)a+6 6 6 算术运算符和算术表达式算术运算符和算术表达式n算术运算符的优先级算术运算符的优先级()例 5/2 =2 -5/2.0=-2.5例 5%2 =1 -5

    5、%2 =-1 1%10 =1 5%1 =0 5.5%2 ()7 7 自增、自减运算符自增、自减运算符n自增自增(+)、自减、自减(-)都是都是单目单目运算符运算符n有前缀和后缀两种形式有前缀和后缀两种形式 前缀形式前缀形式:先自增先自增(自减自减)再引用;再引用;后缀形式后缀形式:先引用再自增先引用再自增(自减自减);n功能:功能:前缀形式前缀形式 +a a 等价于等价于 a=a+1 a=a+1 -a a 等价于等价于 a=a a=a 1 1 后缀形式后缀形式 a+a+等价于等价于 a=a+1 a=a+1 a a-等价于等价于 a=a a=a 1 1例如:例如:当当 a5 时时 +a 表达式的

    6、值为表达式的值为 6,且且 a6 a+表达式的值为表达式的值为5,且,且 a6 b=+a 等价于等价于 a=a+1;b=a 表达式的值为表达式的值为6,且,且 a=6,b=6 b=a+等价于等价于 b=a;a=a+1 表达式的值为表达式的值为5,且,且 a=6,b=5 说明:n+和和-的运算对象只能是变量的运算对象只能是变量,不能是常量不能是常量或表达式。或表达式。例如:例如:5+、(a+2)+不合法。不合法。n右结合性右结合性,结合方向为从右到左。,结合方向为从右到左。例如:例如:a+等价于等价于-(a+)而不等价而不等价(-a)+n如果有多个运算符连续出现时,如果有多个运算符连续出现时,C

    7、编译系统尽可编译系统尽可能多的从左到右将多个字符组合成一个运算符能多的从左到右将多个字符组合成一个运算符例如:例如:i+j 等价于等价于 (i+)+j -i+-j 等价于等价于-(i+)+(-j)8 关系运算符、逻辑运算符及其表达关系运算符、逻辑运算符及其表达式式 无论是关系运算还是逻辑运算,无论是关系运算还是逻辑运算,其结其结果都会得到一个逻辑值果都会得到一个逻辑值。逻辑值只有两。逻辑值只有两个,在很多高级语言中都用个,在很多高级语言中都用“真真”和和“假假”来表示。来表示。由于没有专门的由于没有专门的“逻辑值逻辑值”,C51语言语言规定:当关系成立或逻辑运算结果为非零值规定:当关系成立或逻

    8、辑运算结果为非零值(整数或负数整数或负数)时为时为“真真”,用,用“1”表示;否表示;否则为则为“假假”,用,用“0”表示。表示。n关系运算符关系运算符种类种类:=!=结合方向:自左向右结合方向:自左向右优先级别:优先级别:=!=优先级6(高)优先级7(低)例例 ca+b /c(a+b)ca+b /c(a+b)ab!=c /(ab)!=c ab!=c /(ab)!=c a=bc /a=(bc)a=bc /a=(bc /a=(bc)a=bc /a=(bc)关系表达式的值:是逻辑值“真”或“假”,用1和0表示/表达式值1/表达式值1/表达式值0/d=1/f=0(1)关系运算符与关系表达式关系运算符

    9、与关系表达式(左结合左结合)例 注意区分“=”与“=”int a=0,b=1;if(a=b)printf(“a equal to b”);else printf(“a not equal to b”);关系运算注意(2)ab!a!ba&ba|b真假真假假假真真n逻辑运算符逻辑运算符种类:种类:!&|逻辑运算真值表逻辑运算真值表C语言中,运算量:0表示“假”,非0表示“真”,运算结果:0表示“假”,1表示“真”,真假假假假假真真假假真真真假真真(2)逻辑运算符与逻辑表达式逻辑运算符与逻辑表达式!(2)&(11)|(12)高低l优先级:l结合方向:!:从右向左&:从左向右|:从左向右逻辑运算符和表

    10、达式(2)注意:数学中常用的逻辑关系注意:数学中常用的逻辑关系xay,C51语言的正确写法语言的正确写法为为(x=a)&(a=y)或或 x=a&a=y!(2)&(11)|(12)高低l优先级:l结合方向:!:从右向左&:从左向右|:从左向右逻辑运算符和表达式(3)短路特性:逻辑表达式求解时,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符 例 a&b&c /只在a为真时,才判别b的值;只在a、b都为真时,才判别 c的值例 a|b|c /只在a为假时,才判别b的值;只在a、b都为假时,才判别 c的值例 a=1;b=2;c=3;d=4;m=1;n=1

    11、;(m=ab)&(n=cd)/结果m=0,n=19 9 赋值运算符和赋值表达式赋值运算符和赋值表达式n一般的赋值运算符一般的赋值运算符(右结合)右结合)=n复合复合赋值运算符赋值运算符(右结合)右结合)由一个二元运算符和赋值运算符共同构成由一个二元运算符和赋值运算符共同构成 C C语言共有十种语言共有十种复合复合赋值运算符:赋值运算符:+=-=*=/=%=&=|=n赋值表达式:赋值表达式:由由赋值运算符将变量和一个表达式连接起来赋值运算符将变量和一个表达式连接起来的式子。的式子。n功能:功能:将将表达式的值表达式的值存入存入变量变量对应的内存单元中对应的内存单元中n表达式的值:表达式的值:为为

    12、赋值运算符赋值运算符左边变量的值左边变量的值m=12b=(+a)-2 m%=3+n 等价于等价于 m=m%(3+n)说明:n赋值号左边必须是变量,右边可以是赋值号左边必须是变量,右边可以是C语言任意合语言任意合法的表达式法的表达式例如:例如:n=t+2s 合法合法 相当于:相当于:n=(t+2)10 等价于:等价于:a=(b=(b*c)10)n赋值号与数学中的等号含义不同赋值号与数学中的等号含义不同例如:例如:数学中数学中 a=b 等价于等价于 b=a C语言中语言中 a=b 不等价于不等价于 b=a10 位运算符和位运算&|低于单目、算术运算符,低于单目、算术运算符,高于其他运算符高于其他运

    13、算符低于单目、算术和关系运低于单目、算术和关系运算符,高于其他运算符算符,高于其他运算符位运算符的运算规则 n假设ai和bi均是一个二进制位(bit)运算对象逻辑运算结果aibiai&biai|biai biai000001010111100110111100已知已知x为:为:00010011,y为:为:11110111。求。求x、x&y、x|y、xy的结果。的结果。例:例:(1)x是将是将x中原为中原为1的位变成的位变成0,原为,原为0的位变成的位变成1。因。因此,此,x为:为:11101100。(2)x&y、x|y、xy的结果为:的结果为:00010011&:111101110001001

    14、100010011|:111101111111011100010011 :1111011111100100 位逻辑运算符与逻辑运算符的区别位逻辑运算符与逻辑运算符的区别 位逻辑运算符是对二进制位的,逻辑运算位逻辑运算符是对二进制位的,逻辑运算符是对整个表达式的符是对整个表达式的。位逻辑运算符要计算表达式的具体数值,位逻辑运算符要计算表达式的具体数值,逻辑运算符只判别表达式的真逻辑运算符只判别表达式的真(成立成立)与假与假(不成不成立立)。移位运算n例如:ab-1 等价于 (a+8)(b-1)#include void main()int a=10,b=2;printf(%d%dn,);11 11 逗号运算符和逗号表达式逗号运算符和逗号表达式n逗号表达式的一般形式逗号表达式的一般形式 表达式表达式1,表达式,表达式2,表达式,表达式nn 逗号表达式的值逗号表达式的值从左向右,依次对表达式求值,最后得到从左向右,依次对表达式求值,最后得到表达式表达式n 的的值就是值就是逗号表达式的值逗号表达式的值 a=5,a+,a*3 t=1,t+5,t+x=(a=3*5,a*4)小结小结 本节主要内容是:本节主要内容是:C C的算术、的算术、运算符,各种运算符的运算优先运算符,各种运算符的运算优先级,要求能够正确地书写级,要求能够正确地书写C C的表的表达式。达式。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第3章单片机C语言课件.ppt
    链接地址:https://www.163wenku.com/p-5177078.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库