存储:
1: Bit: 每位计算机用bit来存储,可以存储 0, 1;
2: Byte: 每8个bit是一个Byte, 字节, Byte是存储的最小单位;
3: 字: 2个字节来存储二进制数据, 16个Bit的容量;
4: 双字: 4个字节来存储二进制数据 32个Bit的容量;
5: 四字: 8个字节来存储二进制数据 64个bit的容量;
6: 两位16进制正好是1个字节,所以很多二进制编辑器都用16进制来表示;
表示:
1: 无符号整数: 所有的bit都用来表示数据的大小,不带符号,即不能表示负数;
2: 有符号数: 最高位的bit表示符号,剩下的bit表示数据;
正数: 最高位用0,后面是数据部分;
负数: 最高位是1, 数据部分是正数的二进制取反以后再+1;
正3+负3= 0;
3 = 0000 0011
-3 = 先把3取反 1111 1100 + 1 = 1111 1101
3: 小数:
科学计数法的方式来存储小数;
4个字节为单精度小数, 8个字节的为双精度小数;
4: 二进制,是把它当作正数来用,它就是正数,你把他当作负数来用,那么他就是负数,如果你把它当作无符号数据来用,那么他就是一个无符号数据,如果你把它当作小数来使用,那么他就是一个小数;
字符:
1: 计算机是没有办法直接存储字符的, 0, 1;
2: 计算机只能存放数据,所以我们必须要规定好 数据到对应字符的映射;
3: 数据到字符的映射,叫做编码; --> 将数据当作字符,然后使用这个编码对照表,翻译出来;
(1) Ascii编码: 英文字符对照编码; --> 一个字节就能搞定
(2) utf8编码: 大部分的文字的编码;
(3)其它编码;
4: 不是说计算机不能直接表示字符吗?那位什么printf能看到字符?
你把数据当成字符;
计算机图形学绘制出来的;