Chinaunix首页 | 论坛 | 博客
  • 博客访问: 636056
  • 博文数量: 205
  • 博客积分: 7891
  • 博客等级: 少将
  • 技术积分: 2168
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-29 13:16
文章分类

全部博文(205)

文章存档

2015年(4)

2014年(5)

2013年(1)

2012年(4)

2011年(51)

2010年(86)

2009年(45)

2008年(9)

分类: C/C++

2009-08-19 01:16:22

1.1 C51语言的基本语法
 1.1.1 数据类型
  unsigned char    单字节    0~255
  signed char      单字节   -128~+127
  unsigned int     双字节   0~65535
   signed int       2          -32768~+32767
   unsigned long    4          0~4294967295
   signed long      4          -2147483648~2147483647
   float            4          ±1.175494E-38~ ±3.402823E+38
   *                1~3        对象的地址
   bit              位         0或1
   sfr              1          0~255
   sfr16            2          0~65535
   sbit             位         0或1
  1.1.2 运算符和表达式
   1 =
   2  + - * / %
   3  ++ --
   4  < <= > >= == !=
   5 && || !
   6 ~ & ^(按位或) << >>
   7 += >>= -= &= *= |= /= ^=(异或) %= ~= <<= 
   8 ,
   9 逻辑表达式?表达式1:表达式2
   10 * 表示取地址里的内容 & 表示取地址 例:int i; int *int_prt; int_prt=&i;
      *int_prt=5; 执行结果为i=5。
   11 ()强制类型转换符 例:px=(char xdata *) 0xB00;
   12 sizeof      
1.2
  1.2.1 C51控制流
      1 选择控制语句 (1) if ①if ②if-else ③else-if
                    (2) switch-case
      2 循环控制语句 (1) for
                    (2) while 可以看作是for语句的简化
                    (3) do-while
      3 转移控制语句  (1) break
                    (2) continue
                    (3) goto
  1.2.2 C51函数
      1 函数的定义
     1 无参函数
     2  有参函数
     3  空函数
    2 函数参数和函数的返回值
      1 形参和实参
        2 函数的返回值
        3 函数的调用
        4 变量的存储类别
      (1) 自动
          (2) static
          (3) extern
        5 局部变量和全局变量
  1.2.3 C51数组和指针
      1 C51数组
      (1) 一维数组
          (2) 多维数组
    2 C51指针
          (1) 指针变量的定义
          (2) 指针变量的引用
          (3) 指针的运算
 
  1.2.4 C51结构、联合和枚举
       1 C51结构(结构体)
          (1) struct
          (2) 结构变量的使用
          (3) 结构数组和结构指针
                struct{
                        int duan[8];
                        int wei[8]; 
                       }xianshi[8];
       也可定义为 struct LED{
                                 int dua[8];
                                 int wei[8];
                                  };
                      struct LED xianshi[8];
                  xianshi[0].duan
                  xianshi[6].wei
             结构指针 struct string{
                                     int duan[8];
                                    int wei[8];
                                   }*xianshi;
                 则 xianshi->wei=5
                    strcpy(xianshi->duan,"3F");
       2 C51联合(共用体)
          (1) union 联合名{
                          数据类型 成员名;
               数据类型 成员名;
               ……
                          }联合变量名;
             联合可以出现在结构体中,结构体也可以出现在联合中
       不同点:在任何同一时刻联合中只存放了一个被选中的成员,而结构体中的所有成员都存在。
    3 C51枚举
      (1) 枚举的定义和说明
        enum 枚举名 (枚举值列表) 变量列表;
      也可以  enum  枚举名 (枚举值列表);
                   enum  枚举名 变量列表;
         (2) 枚举变量的取值
        在默认情况下,第一项符号取值为0,第2项取值为1。。。,也可以初始化,通过初始化后,        后续各项符号随之依次增加。
        例: enum direct{up,down,left=10,right};
                则 up 为 1, down 为 2,left为10,right为11.
 1.3 C51使用技巧
     1 使用位变量
        对于某些标志位,应该使用位变量,而不是unsigned char。
              但是注意 ①用"#pragma disable"说明和用"using"指定的函数,不能返回bit值;
        ②bit 变量不能声明为指针 ③不能使用bit数组,如bit a[5]
        2  使用短型变量
        3  使用无符号类型变量
     4  用局部变量代替全局变量
        5  避免使用浮点指针
        6 使用特定指针 如xdata code
        7  使用宏代替函数
       8  为变量分配内部存储区
 
 
 
 
PS:以上内容,是小菜一个字一个字的敲上去的,希望对大家有点用处。
                               Fly
           
阅读(704) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~