单片机应用系统教学课件2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.2.1 算术运算符与算术表达式 算术运算符共有7 个:+、-、*、/、%、++、--。其中,+、-、*、/、%为双目算术运算符;++、--为单目算术运算符。 1. 双目算术运算符 在使用双目算术运算符+、-、*、/、%时,应注意以下几点。 (1) 乘法运算符“*”不能省略,也不能写成“×”或“.”。 (2) 对于除法运算符“/”,当运算对象均为整数时,结果也为整数,小数部分被自动舍去;当运算对象中有一个是实数时,则结果为双精度实数。例如: 2/5 // 结果为0 2.0/5 // 结果为0.400000 (3) 求余运算符“%”仅适用于整型和字符型数据。求余运算的结果符号与被除数相同,其值等于两数相除后的余数。例如: 1%2 // 结果为1 1%(-2) // 结果为1 (-1)%2 // 结果为-1 2. 单目算术运算符 单目算术运算符++、--又称为自增自减运算符,是C51 语言最具特色的运算符,也是学习C51 语言的一个难点。在使用自增自减运算符时,应注意以下几点。 (1) ++、--的运算结果是使运算对象的值增1 或减1。例如: i++ // 相当于i = i+1 i-- // 相当于i = i-1 (2) ++、--是单目运算符,运算对象可以是整型或实型变量,但不能是常量或表达式,如++3、(i+j) --等都是非法的。 (3) ++、--既可用作前缀运算符,也可用作后缀运算符。 ++i // 前缀,先加后用:先将i 的值加1,然后使用i i++ // 后缀,先用后加:先使用i,然后将i 的值加1 --i // 前缀,先减后用:先将i 的值减1,然后使用i i-- // 后缀,先用后减:先使用i,然后将i 的值减1 (4) 不要在一个表达式中对同一个变量进行多次诸如++i 或 i++等运算,例如: i++ * ++i + i-- * --i 这种表达式不仅可读性差,而且不同的编译系统对这样的表达式将作不同的解释,进行不同的处理,因而所得结果也各不相同。 【例2-6】 自增自减运算符的使用。 #include reg51.h void main( ) { unsigned int i=3, j, k; j=(++i) + 5; // 前缀, 先加后用 k=(i++) + 6; // 后缀, 先用后加 } 在 Keil μ Vision2 中的Watches 对话框中可以看到例2-6 的运行结果,如图2-6 所示。 图2- 6 例2-6 的运行结果 3. 算术表达式 用算术运算符把参加运算的数据(常量、变量、库函数和自定义函数的返回值)连接起来的有意义的算式称为算术表达式。例如: 10/5*3 (x+r)*8-(a+b)/7 sin(x)+sin(y) 在C51 语言中,算术表达式的求值规律与数学中的四则运算规律类似,其运算规则和要求如下。 (1) 在表达式中,可使用多层、配对的圆括号。运算时从内层圆括号开始,由内向外依次计算表达式的值。例如: ((i-5)*y+6)/2.0 (2) 在表达式中,按运算符优先级顺序求值。若运算符的优先级相同,则按规定的结合方向运算。例如: 2*3%4 = (2*3)%4 = 2 2.2.2 赋值运算符与赋值表达式 从表2-7 中可以看出,双目的赋值运算符有两种:赋值运算符(=),复合赋值运算符(+=、-=、*=、/=等)。它们的优先级均为14 级,结合性都是从右至左。 1. 赋值运算符与赋值表达式 在C51 语言中,符号“=”称为赋值运算符。由赋值运算符组成的表达式称为赋值表达式,其一般形式如下: 变量名=表达式 赋值运算的功能是:先求出“=”右边表达式的值,然后把此值赋给“=”左边的变量,确切地说,是把数据放入以该变量为标识的存储单元中。在程序中,可以多次给一个变量赋值,因为每赋一次值,与它对应的存储单元中的数据就被更新一次。例如: a=10 // 将10 赋给变量a b=12+a // 将(12+a)的值赋给变量b a=a+10 // 将(a+10)的值赋给变量a 在使用赋值运算符时,应该注意以下几点。 (1) “=”与数学中的“等于号”是不同的,其含义不是等同的关系,而是进行“赋予”的操作。例如: i = i + 1 是合法的赋值语言表达式。 (2) “=”的左侧只能是变量,不能是常量或表达式。例如: a + b = c 是不合法的赋值表达式。 (3) “=”右边的表达式也可以是一个合法的赋值表达式。例如: a = b = 7 + 1 (4) 赋值表达式的值为其最左边变量所得到的新值。例如: a = ( b = 3 ) // 该表达式的值是3 x = ( y = 6 ) + 3 // 该表达式的值是9 z = ( x

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档