02-二进制的算数运算
二进制的算数运算
无符号数的算数运算
- 加法
位数对齐,逢二进一。 - 减法
位数对齐,0-1不够,十进制借位为10,二进制借位为2。
- 乘法
- 除法
有符号数的算数运算
计算机中是没有减法的,减法通过加上负数进行计算。计算机的运算都是通过补码进行运算的,将什么数都换位补码进行运算。
原码、反码、补码
- 一个数原来的值叫做是真值
- 原码、反码、补码最高位是符号位,剩余位数为数值位
- 正数的原码、反码、补码相同,数值位和符合位都一样
y=-1011---这是真值
- 原码:1 1011----添加符号位之后,数值位照抄
- 反码:数值位取反
- 补码:在反码的基础上加1
计算1011-0110
- 先将两个数转换为补码
- 1011----补码01011
- -0110-->反码11001-->补码11010
- 01011+11010=100101,溢出一位
- 计算得到补码,将补码转化位为反码,再转化为原码
计算0101-1100 - 转化为补码,0 0101 和 1 0100
- 计算得到1 1001,得到的是补码,符号位为1,表示负数,转化为原码,取反加一
- 补码转变为原码,取反加一得到1 0111,-7