关键词不能为空

当前您在: 主页 > 英语 >

51单片机C语言变量定义

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-03-03 12:49
tags:

-

2021年3月3日发(作者:账簿)


单片机教程


,51


单片机


C


语言学习



第六课



变量





上课所提到变量就是一种在程序执 行过程中其值能不断变化的量。


要在程序


中使用变量必须先用标 识符作为变量名,


并指出所用的数据类型和存储模式,



样编译系统才能为变量分配相应的存储空间。定义一个变量的格式如下:







[


存储种类


]



数据类型



[


存储器类型


]



变量名表





在定义格式中除了数据类型和变量名表是必要的,


其它都是可选 项。


存储种


类有四种:自动(


auto



,


外部(


e xtern



,


静态(


static


)和寄存器(


register



,缺


省类型为自动


( auto)


。这些存储种类的具体含义和用法,将在第七课《变量的存

< br>储》中进一步进行学习。





而这里的数据类型则是和我们在第四课中学习到的名种数据类型的定义是


一样的。


说明了一个变量的数据类型后,


还可选择说明 该变量的存储器类型。



储器类型的说明就是指定该变量在


C51


硬件系统中所使用的存储区域,


并在 编译


时准确的定位。表


6


< p>
1


中是


KEIL


uVi sion2


所能认别的存储器类型。注意的是在


AT89C51


芯片中


RAM


只有低

< br>128


位,


位于


80H



FFH


的高


128< /p>


位则在


52


芯片中


才有用,并和特殊寄存器地址重叠。特殊寄存器(


SFR


)的 地址表请看附录二



AT89C51


特殊功能寄存器列表



存储器类型







data



直接访问内部数据存储器 (


128


字节


),

访问速度最快



bdata


可位 寻址内部数据存储器



16


字节)



允许位与字节混合


访问

< br>


idata


间接访问内部数据存储器(


256


字节)


,允许访问全部内

部地址



pdata


分页访问外 部数据存储器(


256


字节)


,用


MOVX


@Ri



令访问



xdata


外部数据存储 器


(64KB)


,用


MOVX @DPTR


指令访问



code



程序存储器(


64KB



,



MOVC @A+DPTR


指令访问




6



1



存储器类型





如果省略存储器类型,系统则会按编译模式

< br>SMALL,COMPACT



LARGE


所规


定的默认存储器类型去指定变量的存储区域。


无 论什么存储模式都可以声明变量


在任何的


8051


存储区范围,然而把最常用的命令如循环计数器和队列索引放在


内部数据区可 以显著的提高系统性能。


还有要指出的就是变量的存储种类与存储


器类型是完全无关的。





SMALL


存储模式把所有函数变量和局部数据段放在


8051


系统的内部数据存


储区这使访问数据非常快, 但


SMALL


存储模式的地址空间受限。在写小型的应


用程序时,变量和数据放在


data


内部数据存 储器中是很好的因为访问速度快,


但在较大的应用程序中


dat a


区最好只存放小的变量、数据或常用的变量(如循


环计数、数 据索引)


,而大的数据则放置在别的存储区域。





COMPACT

< br>存储模式中所有的函数和程序变量和局部数据段定位在


8051

< br>系统


的外部数据存储区。外部数据存储区可有最多


256


字节(一页)


,在本模式中外


部数据存 储区的短地址用


@R0/R1






LARGE


存储模式所有函数和过程的变量和局部数据段都定位在


8051


系统的


外部数据区外部数据区最多可有


64KB


,这要求用


DPTR


数据指针访问数据。

< p>




之前提到简单提到


sfr,sfr16,sbit


定义变量的方法,下面我们再来 仔细看看。


-


-


-


-


-


-


-


-



本文更新与2021-03-03 12:49,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/700064.html

51单片机C语言变量定义的相关文章