一、字符的存储
计算机中的内存可以存储二进制,那可以把字符转换为二进制的编码存储在内存中
ASCII编码表(美国信息交换标准代码)可以将部分字符转换为对应的数字编码的二进制存储在内存中
注意:' 0 ' 是 48 ,' A ' 是 65 ,' a ' 是 97
二、图片数据-彩色图的存储
我们要知道图片是由无数个像素点组成的
每个像素点的数据用 0 ~ 255*255*255 表示其颜色
所以可以把每一个像素点的数据都转换为二进制存储在内存中,把所有的像素点存储后,就把一张完整的图片存储起来了
三、声音数据的存储
声音就是一个波形图,有上下的起伏,那要怎么存储在内存中呢
其实很简单,把波形图映射到坐标上,不同的点存不同二进制,就能把波形图存储起来
视频的存储就是图片和声音的结合,分开存储,先存图片,再存声音,存一帧帧图片,存一帧帧声音,然后再结合到一起
四、十进制与二进制
4.1 十进制数转二进制数
方法:除二取余法
示例:
4.2 二进制数转十进制数
示例:
五、八进制和十六进制
在Java中,虽然二进制是计算机内部处理信息的核心格式,但直接以二进制形式表示数据在编程时通常是不方便的,为了便于观察和表示二进制,推出了八进制和十六进制
5.1 八进制
八进制:每 3 位二进制位作为一个单元,最小数是 0,最大数是 7,即 0 ~ 7,共 8 个数字
5.2 十六进制
十六进制:每 4 位二进制位作为一个单元,最小数是 0,最大数是 15,共 16 个数字
用 0 ~ 9 A B C D E F 代表十六进制
注意:
Java程序中支持书写二进制、八进制、十六进制的数据,分别需要以 0B 或 0b,0,0X或0x 开头
(这里是零,不是字母o)
int a1 = 0B01100001; //0B 开头的数据当成二进制看待 System.out.println(a1); int a2 = 0141; //0 开头的数据当成八进制看待 System.out.println(a2); int a3 = 0XFA; //0X 开头的数据当成十六进制看待 System.out.println(a3);// 输出:97
97
250
六、计算机的数据单位
计算机表示数据的最小组成单位是:字节 1B = 8b
在B 的基础上,计算机发展出了KB、MB、GB、TB、...这些数据单位
它们之间的换算为: