单片机教程(零) : C语言基础

**学如逆水行舟,不进则退。——《增广贤文》**

C51学习的C语言基础

  • (一)进制
    • 1.进制介绍
    • 2.进制之间转换
  • (二)标识符与关键字
    • C语言的基本类型数据
    • 控制语句关键字
    • 存储类型关键字
    • 其他关键字
  • (三)C语言常用运算符
  • (四)基本语句

(一)进制

在C51常用进制有二进制、十进制与十六进制

1.进制介绍

十进制:
   我们日常生活中使用的是十进制,在十进制中每位上的数字只有0~9,并且逢十进一。

例如39有两位,个位9 和 十位3
下一个数字,9+1变成10,根据逢十进一,所以进行进位,十位3+1变成4,
而进位后原位变成0,即下一数字是40

二进制:
   二进制是逢二进一,所以每个位置上面只有0和1两个数字

例如 11 的下一个数字推算:
最低位是1 加一后变为 2 进行进位 高位 1获得进位1 变成2 所以也进行进位
所以下一个数字为 100

十六进制
   十六进制,顾名思义就是逢16进一,但是10~15分别用abcdef来代替
进位方法和上述一致

2.进制之间转换

二进制转十进制:
   计算方法:每一位乘以2的n-1次方然后进行相加,(n为第几位,从低为1依次向高位升高)

例如:二进制1101为十进制13
计算过程:1 * 2^0 + 0 * 2^1 + 1 * 2^2 + 1 * 2^3 = 1 + 0 + 4 + 8 = 13

十进制转二进制:
   要将十进制数转换为二进制数,可以使用以下步骤:

将给定的十进制数除以2,得到商和余数。 将余数写下来,作为二进制数的最低位。 将商作为新的十进制数,并再次重复步骤1和2,直到商为0为止。
将所有的余数从最低位到最高位排列起来,得到最终的二进制数。

例如,将十进制数27转换为二进制数: 
27 ÷ 2 = 13,余数为1 
13 ÷ 2 = 6 余数为0 
6 ÷ 2 = 3,余数为0 
3 ÷ 2 = 1,余数为1 
1 ÷ 2 = 0,余数为1
将所有的余数从最低位到最高位排列起来,得到二进制数11011。
因此,十进制数27转换为二进制数11011。

(二)标识符与关键字

1.标识符:
   C语言中标识符是用来标识程序中某个对象的名称。这些对象可以是变量、函数、数组等。一个标识符由字母、数字和下划线组成,第一个字符必须是字母或者下划线。

例如:“max”合法,“_max”合法,“3max”不合法,“+max”不合法。

   C语言是对大小写字母敏感的,如“max”和“MAX”是两个完全不同的标识符。
程序中对于标识符的命名应当简洁明了,含义清晰,便于便于阅读理解。

2.关键字:
   关键字是一类具有固定名称和特定含义的特殊标识符,有时又称为保留字。对标识符的命名不能与关键字相同。
与其他程序设计语言相比C语言的关键字是比较少的,一共定了32个关键字。
关键字包含数据类型关键字,控制语句关键字,存储类型关键字,其他关键字四种.

C语言的基本类型数据

数据类型 关键字 数值范围 所占位数
位类型 bit 0 ~ 1 1
无符号字符型 unsigned char 0 ~ 255 8
有符号字符型 char -128 ~ 127 8
无符号整型 unsigned int 0 ~ 65535 16
有符号整型 int -32768~32767 16
无符号长整型 unsignedf long 0~4294967295 32
单精度浮点型 float 3.4e-38 ~ 3.4e38 32
双精度浮点型 double 1.7e-308 ~ 1.7e308 64

控制语句关键字

单片机教程(零) : C语言基础_第1张图片

存储类型关键字

(1)auto:声明自动变量一般不使用

(2)extern:声明变量是在其他文件正声明(也可以看做是引用变量)

(3)register:声明积存器变量

(4)static:声明静态变量

其他关键字

(1)const:声明只读变量

(2)sizeof:计算数据类型长度

(3)typedef:用以给数据类型取别名

(4)volatile:说明变量在程序执行中可被隐含地改变

(三)C语言常用运算符

(四)基本语句

   待更新…

---->>>51单片机教程资料汇总
下一篇—>单片机教程(一): 准备工作——单片机环境的搭建-Keil安装

你可能感兴趣的:(51单片机教程,c语言,51单片机,单片机,stm32,经验分享,学习)