C++内置类型在计算机内存中如何存储的
1.基本概念
C++定义了一组表示整数,浮点数,单个字符和布尔值的算术类型,算术类型的存储空间依据机器而定,这里的存储空间是指用来表示该类型的二进制位数.这里面需要介绍几个概念:
- 位
计算机内部数据存储最小单位,每位只有0和1两个值.11001111这就是一个8位的二进制数.- 字节
计算机中以字节位单位存储和解释信息,规定一个字节由由八个二进制位构成, 即一个字节等于8位。八位二进制数最小为00000000, 最大为11111111;通常一个字节可以存入一个ASCII码,2个字节可以存放一个汉字国标码。- 字
一个字通常由一个或多个(一般是字节的整数位)字节构成。字是指计算机一次能处理的二进制数据的长度,是一个非固定的概念。例如,8位计算机的字长为8,即一个字节,32位计算机的字长位32,即4个字节,同理,64位计算机的字长为64,即8字节。
大多数计算机的的存储器中的每一个字节和一个地址关联起来,对于一个8位字节和32位字的机器,我们可以将存储器的字表示如下:
736424 | 00011011 |
---|---|
736425 | 01110001 |
736426 | 01100100 |
736427 | 00111011 |
左边是字节的地址(一般地址都是用16进制表示的),后面是8位的字节.