STC单片机C语言程序设计 第10章 STC单片机C语言运算符.pdf

STC单片机C语言程序设计 第10章 STC单片机C语言运算符.pdf

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STC单片机C语言程序设计 第10章 STC单片机C语言运算符

STC单片机C语言运算符 主讲:何宾 Email :hebin@mail.buct.edu.cn 2016.03 STC单片机C语言运算符 在C语言中,提供了丰富的运算符用于实现复杂的运算功能,包 括:算术运算、逻辑运算及逻辑判断等。本章将详细的介绍C语 言中所提供的赋值运算符、算术运算符、递增和递减运算符、关 系运算符、逻辑运算符、位运算符、符合赋值运算符、逗号运算 符、条件运算符、强制类型转换符以及sizeof运算符。 通过本章内容的学习,掌握C语言运算符的表示方法及所实现的 功能,灵活高效地运用这些运算符实现对数据进行处理。 C语言运算符分类 在C语言中,提供了丰富的运算符用于对数据的处理。通过运算 符和数据的有效合理搭配,就构成了可以完成所要求运算功能的 表达式。对于C语言的运算符来说,可以从下面的角度进行分类:  根据所实现的功能 ,C语言中的运算符可以分为赋值运算符、算 术运算符、递增和递减运算符、关系运算符、逻辑运算符、位运 算符、符合赋值运算符、逗号运算符、条件运算符、指针和地址 运算符、强制类型转换运算符和sizeof等运算符。 C语言运算符分类  根据参与运算数据的个数 ,C语言中的运算符可以分为单目运算 符、双目运算符和三目运算符。  对于单目运算符,只有一个操作数。典型地,包括:递增递减运算符、取地 址运算符、指针运算符、取正数运算符,取负数运算符、按位取反运算符和 sizeof运算符。  对于双目操作符,有两个操作数。典型地,包括加法、减法、乘法和除法运 算符等。  对于三目操作符,有三个操作数。典型地,条件运算符。 C语言运算符优先级 所谓的运算符优先级是指,在一个运算表达式中,执行运算的先 后顺序。在C语言中,共分了15级优先级,最高优先级称为第1 级,最低优先级称为第15级,也就是所数字越高优先级越低。 注:表中的一些其它运算符在后续章节中将详细介绍。 赋值运算符 在C语言中,赋值操作使用“=”号实现,“=”称为赋值运算符, 赋值语句的格式为: 变量=表达式; 先计算由表达式所得到的值,然后在将该值分配给变量。 【例10-1】不同类型之间赋值操作的例子 代码清单10-1 main.c文件 int main() { volatile unsigned int a; //定义无符号的整型变量a ,带有volatile属性 volatile int b=-2345; //定义带符号的整型变量,初值为-2345 a=b; //将b的值赋给a , return 0; } 赋值运算符 读者可以进入到本书所提供资料的stc_program_example\例子 10-1\ 目录下,在Keil μVision5集成开发环境下打开该设计,并 进入调试器模式,使用单步运行。根据前面说提到的,由于b是 有符号的变量,而a是无符号的变量,当把有符号变量的数赋值 给无符号变量a的时候,会有什么结果?下面对该段代码进行分 析。  在Disassembly窗口中 ,查看该段C语言代码的反汇编代码。 赋值运算符 代码清单10-2 main.c的反汇编代码 2: { 3: volatile unsigned int a; 4: volatile int b=-2345; C:0x0003 750AF6 MOV 0x0A,#0xF6 C:0x0006 750BD7 MOV 0x0B,#0xD7 5: a=b; C:0x0009 850A08

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档