# 类型与运算
## 计算机体系结构 (芬诺伊曼体系结构)
- 输入单元
- 输出单元
- 运算器 (单元)
- CPU
- GPU
- 存储器
- 缓存 cache 最快
- 主存(内存)直接与 CPU 连接
- 外部、辅助(硬盘、CD)
- 寄存器
- 控制器
CPU 读取速率:
缓存 > 内存 > 硬盘 > 网络
## 常量&变量(字段)
存储输入的数据或运算的中间值及结果,需要声明划分存储空间
内存空间有编号,但是不易于使用,所以给内存区域一个标识符(变量名、常量的名字)
标识符的命名规则:
- 字母、数字、下划线 _ ; 不能使用其他符号
- 不能数字开头,不能包含空格及下划线之外的其他符号
- 不能使用关键字和保留字
hello
_hello
_163
first_name
first name(不合法)
64n(不合法)
first-name(不合法)
int (不合法)
for(不合法)
goto(不合法)
... shell
# 内存的范围
lsmem
## 类型
- 基本类型(原子)
- 复合类型(数组、结构体、联合、枚举、类)
整型,不含小数点、区分正负、还可以无符号
类型的大小与平台有关(编译器实现)有关
- short 2 2^16 -65536/2 ~0 ~ 65536/2-1
- int 4
- long 8
- long long 8
无符号的整型 0~ 系统编程对空间进行编号
- unsigned short 2 0~65535(端口数、android)
- unsigned int 4
- unsigned long 8
- unsigned long long 8
浮点型,有小数位
- float 4
- double 8
字符
- char 1