C51 中的关键字

关键字

用途

说明

auto

存储种类说明

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

break

程序语句

退出最内层循环

case

程序语句

Switch语句中的选择项

char

数据类型说明

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

const

存储类型说明

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

continue

程序语句

转向下一次循环

default

程序语句

Switch语句中的失败选择项

do

程序语句

构成do..while循环结构

double

数据类型说明

双精度浮点数

else

程序语句

构成if..else选择结构

enum

数据类型说明

枚举

extern

存储种类说明

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

float

数据类型说明

单精度浮点数

for

程序语句

构成for循环结构

goto

程序语句

构成goto转移结构

if

程序语句

构成if..else选择结构

int

数据类型说明

基本整型数

long

数据类型说明

长整型数

register

存储种类说明

使用CPU内部寄存的变量

return

程序语句

函数返回

short

数据类型说明

短整型数

signed

数据类型说明

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

sizeof

运算符

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

static

存储种类说明

静态变量

struct

数据类型说明

结构类型数据

switch

程序语句

构成switch选择结构

typedef

数据类型说明

重新进行数据类型定义

union

数据类型说明

联合类型数据

unsigned

数据类型说明

无符号数数据

void

数据类型说明

无类型数据

volatile

数据类型说明

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

while

程序语句

构成while和do..while循环结构

ANSIC 标准关键字

关键字

用途

说明

bit

位标量声明

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

sbit

位标量声明

声明一个可位寻址变量

Sfr

特殊功能寄存器声明

声明一个特殊功能寄存器

Sfr16

特殊功能寄存器声明

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

data

存储器类型说明

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

bdata

存储器类型说明

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

idata

存储器类型说明

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

pdata

存储器类型说明

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

xdata

存储器类型说明

外部数据存储器

code

存储器类型说明

程序存储器

interrupt

中断函数说明

定义一个中断函数

reentrant

再入函数说明

定义一个再入函数

using

寄存器组定义

定义芯片的工作寄存器

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

符号

地址

注释

*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

电源控制及波特率选择

*SCON

98H

串行口控制器

SBUF

99H

串行数据缓冲器

*TCON

88H

定时器控制

TMOD

89H

定时器方式选择

TL0

8AH

定时器0低8位

TL1

8BH

定时器1低8位

TH0

8CH

定时器0低8位

TH1

8DH

定时器1高8位

带*号的特殊功能寄存器都是可以位寻址的寄存器

C51关键字的更多相关文章

  1. 作为一个新手的Oracle(DBA)学习笔记【转】

    一.Oracle的使用 1).启动 *DQL:数据查询语言 *DML:数据操作语言 *DDL:数据定义语言 DCL:数据控制语言 TPL:事务处理语言 CCL:指针控制语言 1.登录 Win+R—cm ...

  2. C51编译器的扩展关键字

    附表1-1 ANSIC标准关键字 附表1-2 C51编译器的扩展关键字

  3. 关于Keil C51中using关键字的使用心得

    刚才看到一位很牛的师兄写的一篇日志中提到了Keil C51中using这个关键字的用法,粗心的我本来一直都没有留意它是用来干嘛的(因为我一般看见它都是在中断服务函数的定义开头处,好像没有了它也可以中断 ...

  4. 单片机成长之路(51基础篇) - 008 C51 的标示符和关键字

    标准 C 语言定义了 32 个关键字,如下表(ANSI C的32个关键字): C51在此基础上针对单片机功能进行了扩展,详情见下表(C51编译器扩充关键字): C 51的数据类型 51单片机使用的C语 ...

  5. C51中的关键字和ANSIC标准关键字

    C51中的关键字和ANSIC标准关键字 作       者:武力戡乱 修改日期:2017-09-05 备       注: 1.总备注信息 2.联系方式 3.其它博文链接:武力戡乱博客目录总表 内   ...

  6. C51中的关键字data,idata,xdata,pdata,bdata

    写在最前面的话:官方网站的解答是最可信的.英语不错的必看.http://www.keil.com/support/man/docs/c51/c51_le_memtypes.htm 下面转载几篇中文的, ...

  7. KEIL C51中的_at_关键字

    绝对位置变量 变量可以在你的C程序中的绝对内存地址位于源模块使用_at_关键字.此功能的用法是: 类型 _ memory_space _ 变量名 _at _  常数 ; 其中:memory_space ...

  8. KEIL C51的XBYTE关键字

    The XBYTE macro allows you to access individual bytes in the external data memory of the 8051. You m ...

  9. C51的关键字解释

    参考原文 https://www.cnblogs.com/tianqiang/p/9251486.html [存储种类] 数据类型 [存储器类型] 变量名 [_at_] [地址]: _at_ 地址定位 ...

随机推荐

  1. How to executing direct SQL statements [Axapta, AX4.0, AX2009, AX2012]

    Today I want to talk about executing SQL statements in X++ on both the current AX database and exter ...

  2. C# 截取带路径的文件名字,扩展名,等等 的几种方法

    C#对磁盘IO操作的时候,经常会用到这些,路径,文件,文件名字,文件扩展名. 之前,经常用切割字符串来实现, 可是经常会弄错. 尤其是启始位置,多少个字节,经常弄晕. 下面这种方法貌似比较简便: st ...

  3. MySQL线上执行大事务或锁表操作

    前提 在线执行一些大事务或锁表操作(给某个核心级表加一列或者执行修改操作),此时不但主库从库要长时间锁表,主从延迟也会变大.未避免大事务sql对整个集群产生影响,,我们希望一条SQL语句只在Maste ...

  4. iOS反射机制

    iOS属性反射:说白了,就是将两个对象的所有属性,用动态的方式取出来,并根据属性名,自动绑值.(注意:对象的类,如果是派生类,就得靠其他方式来实现了,因为得到不该基类的属性.) 本人常用的反射方式,有 ...

  5. Python核心编程--学习笔记--6--序列(下)列表、元组

    11 列表 类似于C语言的数组,但是列表可以包含不同类型的任意对象.列表是可变类型. 创建列表——手动赋值.工厂函数: >>> aList = [12, 'abc'] >> ...

  6. 推荐一个sqlce,sqllite等数据库管理工具

    推荐一个sqlce,sqllite等数据库管理工具 下载地址: http://fishcodelib.com/files/DatabaseNet4.zip 支持sqlserver,sqlce, sql ...

  7. 《Prism 5.0源码走读》Service Locator Pattern

    在Prism Bootstrapper里面取实例的时候使用 ServiceLocator模式,使用的是CommonServiceLocator库 (http://commonservicelocato ...

  8. UVA 10970 第一次比赛 D题 (后面才补的)

    Mohammad has recently visited Switzerland. As heloves his friends very much, he decided to buy somec ...

  9. .NET开源工作流RoadFlow-流程设计-保存与发布

    如果流程未设计完时可以先保存,以后再打开接着设计.点击工具栏上的保存按钮即可保存当前流程设计: 如果下次要接着设计,则可以打开该流程继续设计: 如果流程设计完成,可以点击安装按钮来发布流程,流程安装成 ...

  10. SQLite之读取数据库内容

    1.打开已有数据库. //打开数据库 - (BOOL )openDB {// 红色部分修改为自己的数据库路径 return (SQLITE_OK == sqlite3_open([@"/Us ...