1.在表示网络传输速度中与表示存储单位的不同:
表示存储单位时:1kB=1024B,但在网络中表示传输速度是1KB=1000B
2.下面介绍表示存储单位时的关系及其与操作系统位数的关系:
1B=8bit
字是指计算机cpu一次可处理的二进制数,32位操作系统字长位32bit(4B),64位系统字长64bit(8B);
3.不同操作系统中数据类型的表示范围
与其说数据类型与操作系统位数有关,不如说与编译器编译有关。一般的,数据类型的字节数是由编辑器决定的。64位系统中编译器可以采用32位和64位两种编译方式。两种编译方式中除了*与long会与编译器采用的32位编译或64位编译而有不同,其他的都固定不变。具体表示范围如下:
数据类型 | 说明 | 32位字节数 | 64位字节数 | 取值范围 |
---|---|---|---|---|
bool | 布尔型 | 1 | 1 | true,false |
char | 字符型 | 1 | 1 | -128~127 |
unsigned char | 无符号字符型 | 1 | 1 | 0~255 |
short | 短整型 | 2 | 2 | -32768~32767 |
unsigned short | 无符号短整型 | 2 | 2 | 0~65535 |
int | 整型 | 4 | 4 | -2147483648~2147483647 |
unsigned int | 无符号整型 | 4 | 4 | 0~4294967295 |
long | 长整型 | 4 | 8 | – |
unsigned long | 无符号长整型 | 4 | 8 | – |
long long | 长整型 | 8 | 8 | -2^64~2^64-1 |
float | 单精度浮点数 | 4 | 4 | 范围-2^128~2^128 精度为6~7位有效数字 |
double | 双精度浮点数 | 8 | 8 | 范围-2^1024~2^1024 精度为15~16位 |
long double | 扩展精度浮点数 | 8 | 8 | 范围-2^1024~2^1024 精度为15~16位 |
* | 地址 | 4 | 8 | – |