注:网站和图片均来自于JZStudio计算机编程的计算机导论视频
- 数据类型

多媒体就是对大部分数据类型的总称

| 换算 | 例子 | |
| bit(位) | 1bit | 最小的单位 |
| byte(字节) | 1byte=8bit | 一个字母或符号 |
| 千字节 | 1kb=1024byte | 一张图片 |
| 兆字节 | 1MB=1024kb | 3、5分钟的音频 |
| 吉字节 | 1GB=1024MB | 视频 |
| 太字节 | 1TB=1024GB | 电影的单位 |
- 存储整数-无符号表示法


无符号整数只能存储非负数,假如我用3位来存储二进制的1001就存不下来,就发生了溢出。这时,计算机会将从左往右数第三位以后的数全部丢弃掉。如果我只存储10,那计算机为了填满这三位就会往左补0,变成010。(最大无符号整数之前已经讲过了,感兴趣的可以往前翻)
- 符号加绝对值表示法
无符号整数只能存储非负数,那为了表示符号该用什么方法呢?很简单,用一位来表示+/-就行

这时就出现了一个问题,1000和0000都表示0,所以,这个系统有两个0
溢出时计算机会舍去剩下的数
补码
符号加绝对值表示法虽然可以表示负数,但浪费了一位。补码就完美的解决了这个问题。
算法:二进制数X
X>0:X补=X
X<0:X补=X反码+1(如0010取补码等于1110(01101+1))
反码:所有位0变成1,1变成0。(如0010取反等于1101)
注意:补码第一位是0,则这个整数为正,是1就是负


如-3在4位中存储:
-3为负,则将3转换为二进制取补码
3=(11)2=0011
取补码等于 1101(1100+1)
结束
发表回复