IEEE给出的嵌入式系统的定义:嵌 入 式 系 统 是 以 应 用为 中 心 、 以 计 算 机 技 术 为 基 础 、软 件 硬 件 可 裁 剪 、 适 应 应 用 系系统对功 能 、 可 靠 性 、 成 本 、 体 积 、 功 耗 严 格 要 求 的 专 用 计 算 机 系 统 。
嵌 入 式 系 统 是 将 先 进 的 计 算 机 技 术 、 半 导 体 技 术 和 电 子 技 术 与 各 个 行 业 的 具 体 应 用 相 结 合 后 的 产 物 。
包 含 有 计 算 机 , 但 又 不 是 用 计 算 机 的 计 算 机 应 用 系 统 。
一、vim进阶:
命令模式下
复制:
Myy //复制光标所在的这一行
//M数字 表示复制 从光标所在行开始 M行内容
Np //粘贴
//N数字 可以 粘贴 N份
shift+v //行选中 配合方向键 选中多行
选中的情况下
按一下 y 复制
按p粘贴
ctrl+v //块选中
删除:
dd
剪切:
dd + p //剪切
二、数据类型
基本数据类型:整型 、浮点型 、字符型。
1、整型:常量形式、变量形式
(1)常量形式:
123 //十进制
0x123 //十六进制
0123 //八进制
十进制:
0 1 2 3 4 5 6 7 8 9
10 11 12 13 .... 19
20 21 ... 29
十六进制: // 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 a b c d e f
10 11 12 ... 1a 1b ... 1f
20 ...
八进制:
0 1 2 3 4 5 6 7
10 11 12 13 ...
十进制 转 二进制
除2取余法
二进制转十进制:
加权求和
十六进制 <=> 二进制
1位十六进制数 对应 4位 二进制数
八进制 <=> 二进制
1位八进制数 对应 3位 二进制数
(2)变量形式:描述一个变量
语法: 数据类型 变量名;
整型:
int
short
long
long long
signed / unsigned
变量名起名:
1.数字,字母,下划线
2.数字不是开头
3.区分大小写
4.不能与关键字重名
5.不要和系统二级关键词重名 (include 预处理的命令)
6.不能与库函数重名
int a = 10; //初始化 开空间的同时给了值
int a; //先开空间 后给值
a = 10; // 赋值
int a = 0x12345678;
大端存储 :与小端相反
小端存储: 高高低低
高位数据 存储在 高地址处
低位数据 存储在 低地址处
有符号数:有一位为符号位 包含了 正数 负数
无符号数:不包含符号位 包含非负数
整数在计算机中存的都是补码
正数: 原码 反码 补码 都是一样的
负数: 补码 = 反码 + 1
unsigned short [0~2^16-1] // 范围 0~65536-1
signed short [-2^15 ~ +2^15-1] // 范围 -32768 ~ 32767
2、浮点型:
(1)常量形式
1.234
1.2e3 //科学计数法形式 //1.2*10^3
1.2E3 //e后面 可以是正数 或 负数 不能是小数
(2)变量形式
float //单精度
double //双精度
(3)数据类型
存储 6.25
step1: 将小数 转换为 二进制形式的小数
整数部分: (除2取余法)
0110
小数部分:(乘2取整法)
0.25 * 2 = 0.5 --- 0
0.5 * 2 = 1 --- 1
组合:
0110.01
step2:将二进制形式的小数,写成科学计数法形式
1234.56 ---> 1.23456*10^3
110.01 ---> 1.1001 * 2^2 //科学计数法形式
step3:按照 IEEE 754 标准 存放
1位 符号位|8位-指数位|尾数位
| |
0 | 2 + 127 |
| -127~128 |
1000 0001 1001 0000 0000 0000 0000
0100 0000 1100 1000 0000 0000 0000 0000
4 0 c 8 0 0 0 0
double 8字节
符号位|指数位|尾数位
| 11位|52位
+1023
float
符号位|指数位|尾数位
| 8 位|23位
+127
浮点数的比较问题:统一精度
浮点常量的类型:
默认识别为double类型
0.9f //表示识别为 float类型
0.9L //L表示long double
整型常量:
说明类型
123L //long int
123LL //long long int
123UL
3、字符型:
a b c //unsigned long int
字符数据:
存到计算机 a ---> 编码值 (数值) ---> 无符号的整数
常量形式: 'a' //字符常量
变量: char ch; //tiny int
unsigned char [0~2^8-1] //范围 0~ 255
signed char [-128~127] //范围 -128~127
ascii表:
0~32 控制字符 不可见
'0'~'9' //48~57
'A'~'Z' //65~90
'a'~'z' //97~122
'0' ----- 0
大小写转换
加减32