第3章80C51单片机C语言程序设计最新.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文档。上传文档
查看更多
函数返回值使用的寄存器 返回数据的类型 寄存器 说 明 bit C 进位标志位 char、unsigned char、1字节指针 R7 int、unsigned int、2字节指针 R6、R7 高字节在R6,低字节在R7 long、unsigned long R4、R5、R6、R7 最高字节在R4,最低字节在R7 float R4、R5、R6、R7 32位IEEE格式 通用指针 R1、R2、R3 存储类型在R1,高字节在R2,低字节在R3 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * * * 第3章 80C51单片机C语言程序设计 C51对标准C的扩展 3.1 C51的指针 3.2 C51的函数 3.3 C51与汇编程序的接口 3.4 * * 3.1 C51对标准C的扩展 3.1.1 C51的数据类型 数据是计算机操作的对象,包含常量和变量。 C51扩展了ANSI C,以适应单片机的结构和特点。 数据类型就是数据的格式,它决定数据的值域范围、占用存储单元的个数及能参与哪种运算。 编写C51程序,先要确定数据类型、储存分区 应尽可能采用无符号格式(unsigned) C51中,多字节数据采用“大端对齐”格式 数据起始字节置于高地址端 * * 数据类型 长度(位) 取值范围 字符型 signed char 8 -128~127 unsigned char 8 0~255 整 型 signed int 16 -32768~32767 unsigned int 16 0~65535 长整型 signed long 32 -21474883648~21474883647 unsigned long 32 0~4294967295 浮点型 float 32 ±1.75494E-38~±3.402823E+38 位 型 bit 1 0,1 sbit 1 0,1 访问SFR sfr 8 0~255 sfr16 16 0~65535 C51数据类型表 * * bit定义位变量名字,编译器在位寻址区自动分配该位变量; Sbit声明位变量的名字和地址,地址是确定的(SFR区确定位、位寻址区变量的某确定位)。 几点说明: unsigned char bdata ibase; sbit mybitf = ibase^0; sbit CY = 0xD7; bit flag1 = 0; 含义:赋值 含义:声明 * * 3.1.2 C51数据的存储分区 存储器类型 长度(位) 对应单片机存储器 bdata 1 片内 RAM 位寻址区,共128位。(亦能字节访问) data 8 直接寻址,共128字节。 idata 8 间接寻址,共256字节。 pdata 8 片外 RAM 分页间址,共256字节。(MOVX @Ri) xdata 16 间接寻址,共64k字节。(MOVX @DPTR) code 16 ROM 间接寻址,共64k字节。(MOVC A,@A+DPTR) 经常使用的变量应该置于片内RAM中,要用bdata、data、idata来定义 不常使用的变量或规模较大的变量应该置于片外RAM中,要用pdata、xdata来定义 bit bdata flags; //位变量flags定位在片内位寻址区 char data var; //字符变量var定位在片内RAM区 float idata x,y; //实型变量x,y定位在片内间址RAM区 unsigned char pdata z; //无符号字符变量z定位在片外分页间址RAM区 * * 编译模式 默认 存储分区 特 点 SMALL data 小模式。 变量默认在片内RAM。空间小,速度块。 COMPACT pdata 紧凑模式。变量默认在片外RAM的页(256字节,页号由P2口决定)。 LARGE xdata 大模式。 变量默认在片外RAM的64KB范围。空间大,速度慢。 编译模式默认的变量存储分区 3.1.3 C51的编译模式 未对变量存储分区定义时,C51编译器采用默认存储分区。例如: char var; //SMALL模式时,var定位于data存储区 //COMPACT模式时,var定位于pdata存储区 //LARGE模式时,var定位于xdata存储区 * * 3.1.

文档评论(0)

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

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档