《基于C语言的MCS-51单片机教程》_第4次课-单片机数据类型.pptxVIP

《基于C语言的MCS-51单片机教程》_第4次课-单片机数据类型.pptx

  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文档。上传文档
查看更多

·并行I/O口:4个

8位的I/O口P0、

P1、P2、P3。

山断挖制玄统。

·时钟电路:可产生时钟脉冲

序列,允许晶

振频率6MHZ

和12MHZ或

11.0592

专用寄存器占

用。;

单片机的存储结构

MCS-51单片机存储器可以分成两大类:

■RAM,CPU在运行时能随时进行数据的写入和读出,但在关闭电源时,其所存储的信息将丢失。它用来存放暂时性的输入输出数据、运算的中间结果或用作堆栈。;

MCS-51单片机采用哈佛结构,就是将数据存储器(RAM)和程序

存储(ROM)分开的存储器结构。

MCS-51单片机存储区可分为4个区域

■片内数据存储区(IDATA)

■片外数据存储区(XDATA)

■片内程序存储区(CODE)

■片外程序存储区(CODE);

存储器类型;

KielC51中如何使用单片机资源

◆标识符和关键字

◆数据类型、常量和变量

◆运算符和表达式

◆KeilC51语句;

标识符和关键字

◆标识符

■是在程序中定义的对象,可以是函数、变量、常量、数组、数据类型和

程序语句等。一般由字母、数字和下划线组成,标识符的第一个字符必

须是字母或下划线。

关键字

■是一些固定名称或有特殊含义的标识符,在编程的时候不能另作它用,

自己定义的标识符(如变量名)不能和关键字相同。并且关键字在源程

序加入KeilC51项目文件以后颜色和其它内容不同,很容易区别。;

数据类型、常量和变量

KeilC51的数据类型和TC类似,也分为基本型和复合数据类型,主要使用基本类型中的char,int,float等,除了基本类型,KeilC51还扩展了bit,sbit,sfr,sfr16四种变量类型,其中bit和sbit也是常用的数据类型。;

数据类型;

①位常量

它的值是一个二进制数,为0或者1;

②整型常量

在C51中整型常量可以表示成以下几种形式:

◆十进制整数。如123、0、-89等。

◆十六进制整数。以0x开头表示,如0x34,-0x3B、0x1234、0xABFC等

◆长整数。在整数后面加字母L,如104L在存储器中占四个字节。;

④字符型常量

◆字符型常量是用单引号引起的字符,如‘a、‘9’、‘F’等。

◆对于字符型常量,在单片机中用ASCII码表示。◆例如

unsignedchara;

a=‘9;与a=0x39;等效;

⑤字符串型常量

◆字符串型常量由双引号“”括起的字符组成。如“D”、“1234”、“ABCD”等。

◆注意字符串常量与字符常量是不一样

■一个字符常量在计算机内只用一个字节存放

■一个字符串常量在内存中存放时不仅双引号内的字符一个占

一个字节,而且系统会自动的在后面加一个转义字符“\0”

作为字符串结束符。

◆不要将字符常量和字符串常量混淆,如字符常量‘A和字符串常量“A”是不一样的。;

data(片内数据存储器)

auto(自动变量)xdata(片外数据存储器)

extern(外部变量)code(程序存储器)量。

static(静态变量)存储器类型省略,表示变量

register(寄存器变量存放在片内数据存储器内

[存储种类]据类型[存储器类型]变量名表;;

运算符名;

例如:

a=0xFF;//将常数十六进制数0xFF赋与变量a

b=c=33;//同时赋值给变量b,c

d=e;//将变量e的值赋与变量d;

②算术运算符

+加或取正值运算符

-减或取负值运算符

*乘运算符

/除运算符

%取余运算符++(变量自加1)--(变量自减1);

◆整数相除还是整数

◆计算机中存储数据是一个一个固定的电路结构,整数和实数存储的方式不一样,所以整数在运算后只能得到整数。;

例1:获取一个16位数的高8位和低8位数

单片机典型应用:定时器送计数初值

TH0=(65536-1000)/256;//送计数值高八位给TH0

TL0=(65536-1000)%256;//送计数值高八位给TL0

例2:获取十进制数的BCD码

单片机典型应用:将数码管显示的数字进行数位分解,例如:

unsignedinta=1234;

unsignedchard[4];

d[0]=a/1000;//取出千位数字

d[1]=(a/100)%10;//取出百位数

文档评论(0)

乐毅淘文斋 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8121131046000040

1亿VIP精品文档

相关文档