- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章C程序设计 本章内容 6.1 概述(了解) 6.2 C51程序结构(了解) 6.3 C51的数据类型(重点) 6.4 数据的存储器类型和存储器模式(重点) 6.5 指针(重点) 6.6 SFR、寻址位、存储器和I/O口的定义(重点) 6.7 C51的运算符(了解) 6.8 函数(了解) 6.9 汇编语言和C语言的混合编程(掌握) 6.10 开发工具简介 (Keil C) (了解) 6.2 C51程序结构 (1)C51程序是由函数构成的。函数是C51程序的基本单位。一个函数由两部分组成: 1)函数说明部分。包括函数名、函数类型、函数属性、函数参数(形参)名、形式参数类型。一个函数名后面必须跟一个圆括号,函数参数可以没有,例如main( )。 2)函数体。即函数说明下面的大括号之内的部分。 (2)一个C51程序总是从main函数开始执行,而不论main函数在整个程序中所处的位置如何。 (3)C51程序书写格式自由,一行内可以写几个语句,一个语句可以分写在几行上。在Keil集成开发环境中,C51编辑器带有行号,可以方便编辑和调试。但行号的有无对于C51程序的执行没有影响。 (4)每个语句和数据定义的最后必须有一个分号。分号是C51语句的必要组成部分。分号不可少,即使是程序中的最后一个语句也应包含分号。 (5)C51本身没有输入输出语句。标准的输入和输出(通过串行口)是由scanf和printf等库函数来完成的。对于用户定义的输出,比如直接以输出端口读取键盘输入和驱动LED,则需要自行编制输出函数。 (6)可以用“/*…*/”对C51程序中的任何部分作注释。在Keil uVision 3中,还可以使用“//”进行单行注释。 6.3 C51数据类型 数据类型 长?? ?度 值?? ?域 unsigned ?char 单字节 0~255 signed ?char 单字节 -128~+127 unsigned ?int 双字节 0~65535 signed ?int 双字节 -32768~+32767 unsigned ?long 四字节 0~4294967295 signed ?long 四字节 -2147483648~+2147483647 float 四字节 ±1.175494E-38~±3.402823E+38 指针 1~3 字节 对象的地址 bit 位 0 或 1 sfr 单字节 0~255 sfr16 双字节 0~65535 sbit 位 0 或 1 6.4 C51存储类型 存储器类型 与物理存储空间的对应关系 data 直接寻址片内数据存储器的低128字节,访问速度快 bdata data区中可位寻址区域20H~2FH(16字节),允许位与字节混合访问 idata 间接寻址片内数据存储区(256字节),可访问片内全部RAM空间 pdata 分页(256字节)的外部数据存储区,通过P0端口的地址对其访问 xdata 片外数据存储区(64KB),通过DPTR访问 code 程序存储区(64KB),通过DPTR访问 (1)指针就是指变量或数据所在的存储区地址 (2)存放变量地址的变量称为“指针变量” (3)通型用指针指向任何存储器空间 (4)存储器型指针所指向的对象具有明确的存储器空间 一些例子: char *xdata psy; /*将通用型指针psy自身指定在xdata区*/ long code * xdata l_ptr; /*指针变量l_ptr指向的是code区中的long型变量,l_ptr自身在片内存储区xdata中*/ char data * c_ptr; /*指针c_ptr指向的是data区中的char型变量*/ int xdata * i_ptr; /*指针i_ptr指向的是xdata区中的int型变量*/ 6.5 C51指针 1、特殊功能寄存器SFR定义 C51使用关键字sfr对特殊功能寄存器SFR进行定义,有两种定义方式: (1)自主定义方式 定义后,在程序中即可直接引用寄存器名。 例如: sfr IE=0xa8; /*定义中断允许寄存器IE,地址为A8H*/ sfr ACC=0xe0; /*定义A累加器,地址为E0H*/ sfr P1=0x90; /*定义P1端口,地址为90H*/ (2)利用C51建立的reg51.h (reg52.h)进行定义 使用包含语句 #includereg51.h 后,就可直接引用SFR名称,或直接引用位名称。头文件对所有的SFR和其可寻址位进行了sfr、sb
您可能关注的文档
- 传热学:4 非稳态导热.ppt
- 传热学:5 对流传热原理.ppt
- 传热学:7 辐射传热.ppt
- 传热学:8 传热过程与换热器.ppt
- 大学物理B:第1章 运动学.ppt
- 大学物理B:第8章 真空中的静电场.ppt
- 大学物理B:第10章 恒定电场.ppt
- 大学物理B:第11章 真空中的磁场.ppt
- 大学物理B:第13章 磁介质.ppt
- 大学物理B:第14章 电磁感应.ppt
- 2026年新疆师范大学辅导员招聘备考题库最新.docx
- 2026年上海立达学院辅导员招聘备考题库最新.docx
- 2025年长城铝业公司职工工学院辅导员招聘备考题库附答案.docx
- 2025年重庆应用技术职业学院辅导员考试笔试真题汇编附答案.docx
- 2025年香港中文大学(深圳)辅导员招聘考试真题汇编最新.docx
- 2025年闽南科技学院辅导员考试笔试真题汇编附答案.docx
- 2025年青岛大学辅导员招聘考试真题汇编附答案.docx
- 2025年长春早期教育职业学院辅导员考试笔试真题汇编最新.docx
- 2026年东北农业大学辅导员招聘备考题库最新.docx
- 2025年陕西学前师范学院辅导员考试笔试题库最新.docx
最近下载
- 康复医学发展史.ppt VIP
- 第十八章 电功率(单元测试)(含答案)2025-2026学年物理人教版九年级全一册.docx
- NBT 20039.11-2011 核空气和气体处理规范通风、空调与空气净化 第11部分:碘吸附器(Ⅰ型).pdf VIP
- 《监理规划 .doc VIP
- 国家开放大学《国际经济法》形考任务1-4参考答案 .pdf VIP
- 郭巍《硕博研究生英语综合教程》Unit 5.pptx VIP
- 毕业设计---基于plc的门禁系统设计.doc VIP
- 上海进才中学2021-2022学年高二下学期期末英语试卷(解析版).docx VIP
- 《我国康复事业发展概况》课件.ppt VIP
- 2025至2030保险行业发展研究与产业战略规划分析评估报告.docx VIP
原创力文档


文档评论(0)