二进制算法公式和示例
二进制算法包括二进制数的四则运算和逻辑运算。下面分别介绍这些运算的规则及示例:
二进制四则运算
# 加法
规则:逢二进一
示例:`1101` + `1011` = `11000`
# 减法
规则:借一当二
示例:`1101` - `1011` = `0110`
# 乘法
规则:只有同时为“1”时结果才为“1”
示例:`1001` × `1010` = `10100010`
# 除法
规则:只有`1`除以`1`有定义,结果为`1`
示例:`100110` ÷ `110` = `110` 余 `10`
二进制逻辑运算
# 或运算(OR)
规则:遇1得1,遇0得0
示例:`1010` OR `1100` = `1110`
# 与运算(AND)
规则:遇0得0,遇1得1
示例:`1010` AND `1100` = `1000`
# 非运算(NOT)
规则:各位取反
示例:`1010` NOT = `0101`
二进制小数转换
规则:乘二取整法
示例:`0.65` 转换为二进制为 `0.01010011`
二进制位移运算
# 右移(Shift Right)
规则:相当于除以2的位数方
示例:`1010` >> `2` = `0010`
# 左移(Shift Left)
规则:相当于乘以2的位数方
示例:`1010` << `2` = `10100`
二进制算术运算的注意事项
加减法中,当需要向上一位借数时,必须把上一位的1看成下一位的2。
乘法中,部分积的最低位必须和本位乘数对齐。
除法中,0除以任何数(除了0自身)都是无意义的。
以上是二进制算法的基本规则和示例。
其他小伙伴的相似问题:
二进制减法中如何避免借位错误?
二进制乘法中如何确保结果正确?
二进制除法中0除以什么数有意义?