C51语言支持哪些数据类型,C51编译器支持的数据类型(1)

本文详细介绍了C51编译器支持的数据类型,包括bit、signed/unsigned char/int/long、float以及指针等,阐述了它们的长度、值域以及物理结构。此外,还讨论了特殊功能寄存器(SFR)、位访问和位标量声明,如sbit和bit数据类型的使用和限制。C51编译器允许对特殊功能寄存器的声明和16位数据访问,同时支持对位寻址对象的操作。
摘要由CSDN通过智能技术生成

1.1 C-51 编译器支持下列数据类型:

数 据 类 型

长 度

值 域

bit

1 字节

0 或 1

signed char

1 字节

-128~+127

unsigned char

1 字节

0~255

signed int

2 字节

-32768~+32867

unsigned int

2 字节

0~65535

signed long

4 字节

-2147483648~+2147483647

unsigned long

4 字节

0~4294967295

float

4 字节

±1.176E-38~±3.40E+38

指针

1~3 字节

对象地址

sbit

1 位

0 或 1

sfr

1 字节

0~255

sfr16

2 字节

0~65535

编译的数据类型(如结构)包含上表所列的数据类型。由于8051系列是8位机,因而不存在字节校准问题。这意味着数据结构成员是顺序放置的。 数据类型的转换:当计算结果隐含着另外一种数据类型时,数据类型可以自动进行转换,例如,将一个位变量赋给一个整型变量时,位型值自动转换为整型值,有符号变量的符号也能自动进行处理。这些转换也可以用C语言的标准指令进行人工转换。

1.2

数据类型的物理结构

1.2.1 bit

“bit”类型只有1位,不允许有位指针和位数组。位对象始终位于8051

CPU的可寻址RAM空间。如果程序控制流允许,L51将位对象交迭。

1.2.2 signed/unsigned char;data/idata/pdata 指针

“char”类型标量和基于存贮器的“data/idata/pdata”指针具有1个字节长度(8 bits)。

1.2.3 signed/unsigned int/short;xdata/code 指针

“int”和“short”类型标量及指向xdata/code区域的指针具有2字节长度(16

bits)。

整型值(或偏移)0x1234以下面方式保存在内存中:

地址: +0 +1

内容: 0x12 0x34 1.2.4 signed/unsigned

long

“long”类型标量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值