单片机运算符PPT课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
优先级:前四个高,后二个“==”和“!=”级别低1
4. C51
&&(逻辑与); ||(逻辑或); !(逻辑非)
运算符的两边为关系表达式,逻辑表达式 和关系表达式的值相同,以“0”代表假,以: “1”
以上三种运算的优先级见图4.1。
5. C51的按位操作的运算符有六种:
&(按位与);|(按位或);∧(按位异或);
4.6 C51的运算符
1. 将 “=”右边的值赋给“=”左边的变量(注:不 是相等运算符)
2. C51 +(加或正号);-(减或负号); *(乘号); /(除号); %(求余)
优先级为:先乘除,后加减,先括号内,再括号外 3. C51的关系运算符有六种:
<(小于); >(大于); <=(小于等于); >=(大于等于) ==(相等); !=(不相等)
向不同子程序 C=0,d=0 则 m=a+b C=1,d=0 则 m=a-b C=0,d=1 则 m=a*b C=1,d=1 则 m=a/b 分别使用switch、case指令和if指令写出完整程序。
7
C&d+d 自我提高: 4.4 4.8 4.9
8
2019/12/20
9
例 设i原值为5 如 j=++i 则j值为6,i值也为6
如 j=i++ 则j值为5,i值为6 *7. 复合赋值运算符
+=,-=,*=,/=,%=, <<=,>>=,&=,∧=,|=
例:a+=b相当于a=a+b。3
*8. 对指针操作的运算符 &—取地址运算 *—
①“&”与按位与运算符的差别,如果“&”为 “与”,&
②“*”与及指针定义时指针前的“*”的差别。 如char *pt,这里c=*b;将以b的内容为地址的 单元的内容送C
例 a=&b;取b变量的地址送变量a 的“*”只表示pt为指针 变量,不代表间址取内容
4
的运算。
2019/12/20
5
例 片内RAM 20H单元存放着一个0~05H的数,用查表法,求出该数 的平方值放入内部RAM 21H
main(){ char x,*p; char code tab[6]={0,1,4,9,16,25}; p=0x20; x=tab[*p]; p++; *p=x; }
6
课堂测试
1、^b,~a,a<<4,a>>4 2、有两个数a和b(类型不限),根据位变量c,d的内容转
~(位取反) << (位左移) ;>> (位右移 )

(注:移位操作为补零移位)
例1. a=0xf0H; 表达式a=~a值为0FH
例2. a=0xea; 表达式a<<2值为A8H,即a 值左移两位,移位后空白位补0
2
*6. ++i,--i (在使用i之前,先使i值加(减)1) i++,i-- (在使用i之后,再使i值加(减)1)
相关文档
最新文档