IC选型、设计方案、Demo板、IC样品、批量供货及技术支持;艾工 QQ:921278359; 手机/微信:13662285275


首页 > 技术资料 > C51关键字及sfr寄存器



C51关键字及sfr寄存器


C51 编译器所支持的数据类型


数据类型

长 度

值 域

unsigned char

单字节

0255

signed char

单字节

-128+127

unsigned int

双字节

065535

signed int

双字节

-32768+32767

unsigned long

四字节

04294967295

signed long

四字节

-2147483648+2147483647

float

四字节

±1.175494E-38±3.402823E+38

*

13 字节

对象的地址

bit

0 1

sfr

单字节

0255

sfr16

双字节

065535

sbit

0 1


C51 中的关键字


关键字

用 途

说 明

auto

存储种类说明

用以说明局部变量,缺省值为此

break

程序语句

退出最内层循环

case

程序语句

Switch 语句中的选择项

char

数据类型说明

单字节整型数或字符型数据

const

存储类型说明

在程序执行过程中不可更改的常量值

continue

程序语句

转向下一次循环

default

程序语句

Switch 语句中的失败选择项

do

程序语句

构成 do..while 循环结构

double

数据类型说明

双精度浮点数

else

程序语句

构成 if..else 选择结构

enum

数据类型说明

枚举

extern

存储种类说明

在其他程序模块中说明了的全局变量

flost

数据类型说明

单精度浮点数

for

程序语句

构成 for 循环结构

goto

程序语句

构成 goto 转移结构

if

程序语句

构成 if..else 选择结构

int

数据类型说明

基本整型数

long

数据类型说明

长整型数

register

存储种类说明

使用 CPU 内部寄存的变量

return

程序语句

函数返回

short

数据类型说明

短整型数

signed

数据类型说明

有符号数,二进制数据的最高位为符号



sizeof

运算符

计算表达式或数据类型的字节数

static

存储种类说明

静态变量

struct

数据类型说明

结构类型数据

swicth

程序语句

构成 switch 选择结构

typedef

数据类型说明

重新进行数据类型定义

union

数据类型说明

联合类型数据

unsigned

数据类型说明

无符号数数据

void

数据类型说明

无类型数据

volatile

数据类型说明

该变量在程序执行中可被隐含地改变

while

程序语句

构成 while do..while 循环结构


C51 编译器的扩展 ANSIC 关键字


关键字

用 途

说 明

bit

位标量声明

声明一个位标量或位类型的函数

sbit

位标量声明

声明一个可位寻址变量

Sfr

特殊功能寄存器声明

声明一个特殊功能寄存器

Sfr16

特殊功能寄存器声明

声明一个 16 位的特殊功能寄存器

data

存储器类型说明

直接寻址的内部数据存储器

bdata

存储器类型说明

可位寻址的内部数据存储器

idata

存储器类型说明

间接寻址的内部数据存储器

pdata

存储器类型说明

分页寻址的外部数据存储器

xdata

存储器类型说明

外部数据存储器

code

存储器类型说明

程序存储器

interrupt

中断函数说明

定义一个中断函数

reentrant

再入函数说明

定义一个再入函数

using

寄存器组定义

定义芯片的工作寄存器


51 特殊功能寄存器列表(适用于同一架构的芯片)


符 号

地 址

注 释

*ACC

E0H

累加器

*B

F0H

乘法寄存器

*PSW

D0H

程序状态字

SP

81H

堆栈指针

DPL

82H

数据存储器指针低 8

DPH

83H

数据存储器指针高 8

*IE

A8H

中断允许控制器

*IP

D8H

中断优先控制器

*P0

80H

端口 0

*P1

90H

端口 1

*P2

A0H

端口 2

*P3

B0H

端口 3

PCON

87H

电源控制及波特率选择

PCON

87H

电源控制及波特率选择

*SCON

98H

串行口控制器

SBUF

99H

串行数据缓冲器

*TCON

88H

定时器控制

TMOD

89H

定时器方式选择

TL0

8AH

定时器 0 8

TL1

8BH

定时器 1 8

TH0

8CH

定时器 0 8

TH1

8DH

定时器 1 8


字符串定时时常用转义字符表

转义字符

含义

ASCII 码(16/10 进制)

\o

空字符(NULL)

00H/0

\n

换行符(LF)

0AH/10

\r

回车符(CR)

0DH/13

\t

水平制表符(HT)

09H/9

\b

退格符(BS)

08H/8

\f

换页符(FF)

0CH/12

\'

单引号

27H/39

\"

双引号

22H/34

\\

反斜杠

5CH/92