资源描述
第三章 C51的运算 一、 C51源程序组成 C51源程序是 ASCII文件,可以用任何 ASCII文本文 件编写。 C51源程序 文件 1 文件 2 文件 N . 函数 1 函数 2 函数 M . . 一、 C51源程序组成 C51是有函数组成的,一个 C51源程序至少包含 一个函数称为主函数,其名为 main的 函数及其它函 数组成,其中主函数是程序的入口,也是程序结束 的地方,即出口。 主函数的形式如下: main( ) 说明部分; 语句部分; 二、 C51源程序的书写形式 主函数可以放在程序的任何地方,但整个程序 的执行一定从主函数开始; C程序书写格式自由,一行内可以写几个语句, 一个语句可以写在多行上; 每个语句和数据定义的最后必须有一个分号; 可以用 /*.*/或 /来注释。 三、 C51程序的开发过程 C51文件 1 C51文件 2 C51文件 N . 编译 编译 编译 链接 生成 HEX文件 C51源 文件的扩展 名为 .C C51源 文件编译后 的扩展名为 .OBJ C51源 文件链接后 的扩展名为 .EXE 烧入到 ROM中 四、 C51的优先级及结合方向 优先级:当运算对象两侧都有运算符时,执行 运算的先后次序。按运算符的高低来执行。 例:先乘除、后加减。 结合方向:一个运算对象两侧的运算符的优 先级相同时的运算顺序。分左右结合两种。 例: a+b+c-d 左结合 -(-(-5) 右结合 五、 C51算术运算符及表达式 C51的算术运算符有 5种: + - * / % 加法运算符 或正值符号 减法运算符 或负值符号 乘法运算符 除法运算符 求余运算符 除法有两种: 整除:两个运算对象为整数时; 普通除法:两个运算对象中有一个为实数时。 优先级:先乘除求余、后加减(小括号的优先级最高) 结合方向:除正负号外,其它都是左结 合 算术表达式:由算术运算符连接起来的式子 六、数据类型转换 数据类型转换方式有两种: 自动类型转换 (由 C语言编译自动完成) 强制类型转换 (使用强制类型转换运算符) float double char int unsigned long 格式: (类型名)(表达式) 七、 C51关系运算符及表达式 C51的关系运算符有 6种: = = != 小于 大于 小于等于 大于等于 等于 注意:等于和赋值不要混淆。关系运算符的结果是 0或 1 优先级: , =同优先级, =, !=同优先级,但前者 高于后者 结合方向:全部左结合 不等于 例如:若 a=5, b=3, c=1 则 ab b+cb f=abc 关系表达式:由关系运算符连接起来的式子 八、 C51逻辑运算符及表达式 C51有三种逻辑运算符: ! int n=2; b=an; a=c|b; 十一、自增减运算符 自增减运算符的作用是使变量值自动加 1或减 1。 如: +i, -i 在使用 i之前,先使 i值加(减) 1 i+, i- 在使用 i之后 , 先使 i值加(减) 1 若 i值原来为 5,那么它们的区别在哪里呢? j=+i j=i+ 若 k=3, 下列表达式的值是多少? m=k+k+k+ m=+k+k+k Notes: 1. +和 只能用于单个变量而不能用常量或变量表达式 2. 结合方向右结合 十二、复合运算符 凡是二目运算符都可以与赋值运算符“ =”组合在一起, 称为复合运算符。 C51提供有 10种符合赋值运算符: +=、 -=、 *=、 /=、 %=、 &=、 |=、 =、 =、 = 例如: a=a+b 可写为 a+=b a=a3 可写为 a=3
展开阅读全文