第4章 C语言编程.ppt

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

例2:定义指向固定存储区变量的指针。 void main( ){ int code HZ=0x0101; int idata var_data=0x12; int code *ptr; //指向code存储区的指针ptr, 指针存放在默认存储区 signed int idata * pdata iptr; //指向idata存储区的指针iptr, 指 针存放在pdata存储区 int idata myvar=0xff; ptr=HZ; iptr=var_data; myvar=myvar+*ptr; myvar=myvar+*iptr; return; } C51对存储器的访问 使用C51定义的宏 使用C51指针 使用C51扩展关键字 _at_ 其宏函数原型在头文件absacc.h 中。 //访问片外RAM的0005H单元,//并将一个字节数据保存在变量//var1中。 //访问片外RAM的0004H单元//开始的一个字,并将一个字的//数据保存在变量var2中。 2、通过指针访问 3、使用扩展字 _at_ 使用_at_定义的变量必须为全局变量。 /* 在data区定义变量x1,其地址为40H */ 4.2.6 C51的运算符 C51的运算符按功能划分,可分为赋值运算符、算术运算符、关系运算符、逻辑运算符、位操作运算符以及特殊运算符。 (1) 赋值运算符 赋值运算符“=”,用于给变量赋值。 (2)算术运算符 算术运算符有加(+)、减(-)、乘(*)、除(/)、取余(%)以及自加(++)和自减运算符(--),运算规则与ANSI C一致。 (3)关系运算符 关系运算符有等于(==)、不等于(!=)、大于()、大于等于(=)、小于()和小于等于(=)。若满足关系运算条件,则运算结果为逻辑真(即1);否则运算结果为逻辑假(即0)。 (4)逻辑运算符 逻辑运算符有逻辑与()、逻辑或(||)和逻辑非(!),逻辑运算的结果为逻辑真和逻辑假两种。 (5)位操作运算符 位运算符有按位与()、按位或(|)、按位异或(^)、按位取反(~)、按位左移()和按位右移()。 (6)特殊运算符 表达式1 ? 表达式2 : 表达式3 —— 若表达式1的值为逻辑真,就返回表达式2的值,否则返回表达式3的值。 操作数 —— 返回操作数的地址,用于为指针变量赋值。 * 操作数 —— 操作数为指针,所做的操作均是针对指针所指向的变量。 例1:算术运算符的使用。 void main( ){ unsigned int var1=27, var2=31, rlt0, rlt1; bgn: var1++; //执行后 var1= 28 var2--; //执行后 var2= 30 rlt0=var1+var2; //执行后 rlt0= 58 rlt0=var2-var1; //执行后 rlt0= 2 rlt1=var1*var2; //执行后 rlt1= 840 rlt1=var1/var2; //执行后 rlt1= 0 rlt1=var1%10; //执行后 rlt1= 8 goto bgn; } 例2:位运算符的使用。 void main( ){ unsigned int var1,var2,result; bgn:var1=0x5555; var2=0xaaaa; result=var1 var2; //执行后result = 0x0000 result=var1 | var2; //执行后result = 0xffff result=var1 ^ var2; //执行后result = 0xffff result=~var1; //执行后result = 0xaaaa var1=0x1234; var2=0x0002; result=var11; //执行后result = 0x2468 result=var1var2; //执行后result = 0x048d goto bgn; } 4.3 C51的函数 4.3.1 C51函数的定义 4.3.2 C51函数参数传递及返回值传递 4.3.3 C51函数的

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档