定点数
- 纯小数 0.12, 0.98, 0.22……
- 纯整数: 11, 2, 3, 4…
浮点数
N = 2^e.M
原码: 便于人类计算,但是不利于计算机,进位和移位以及异号运算复杂 反码:转换为补码的过度 补码: 将减法转换为加法 移码: 补码符号位取反, 便于比较大小
二进制转换计算器https://cn.calcuworld.com/%E4%BA%8C%E8%BF%9B%E5%88%B6%E8%AE%A1%E7%AE%97%E5%99%A8
ieee754:
book p22 ->2.9
奇偶校验
奇校验: - 奇数个1:校验
正确
, 校验位填0
- 偶数个1:校验错误
, 校验位填1
偶校验: - 奇数个1:校验
错误
, 校验位填1
- 偶数个1:校验正确
, 校验位填0
定点加法
补码加法
- 补码相加等于原码相加, 最高位进位丢掉(符号位)
补码减法
- x-y = x+(-y)
溢出概念
正溢
两个正数相加后得到负数就是溢出了 例如:(第一位为符号位) ~
01000
+01011
=10011
(符号位为1即为负,所以不对)正溢
## 负溢 两个负数相减也是类似相减后得到一个正数
溢出的检测方法
- 变形补码, 通过双符号位进行表示符号
00
代替原先的0
表示正数
, 如果出现10
表示正溢
11
代替原先的1
表示负数
, 如果出现01
表示负溢
全加器
- 既然说到全加器, 那肯定得谈谈半加器
- 个人理解的半加器, 就是不可以输入进位, 不可以串起来, 全加器可以实现N个加法器串联, 实现多位的运算
>异或门: 相异 => 1 与非门: 1, 1 => 0
仿真:https://blog.csdn.net/qq_40272978/article/details/106229002 matlab 仿真参考: https://max.book118.com/html/2019/0531/6152154012002034.shtm