有符号二进制数的减法
本人的简单学习过程。。。
题目:十进制6-12=-6,利用有符号位二进制写出来过程。
解题思路:
第一步:把减12变为加负12,利用有符号二进制表示出来
6-12=6+(-12)=00000110-00001100=00000110+10001100
第二步:将第一步结果分别转化成补码(见最下补充)
00000110+10001100=00000110(正数补码不变)+11110100(负数变补码)
第三步:将第二步结果两个补码相加
00000110+11110100=11111010(补码)
第四步:将第三步结果转换成原码
11111010(补码)=10000110(原码)
补充:
反 码 = { 正 数 : 等 于 原 码 负 数 : 符 号 位 不 变 , 其 余 位 数 与 原 码 相 反 ( 0 变 1 , 1 变 0 ) 反码= \begin{cases} 正数:等于原码\\ 负数:符号位不变,其余位数\\ 与原码相反(0变1,1变0) \end{cases}反码=⎩⎪⎨⎪⎧正数:等于原码负数:符号位不变,其余位数与原码相反(0变1,1变0)
补 码 = { 正 数 : 与 原 码 的 反 码 相 同 负 数 : 在 反 码 的 基 础 上 加 一 补码= \begin{cases} 正数:与原码的反码相同\\ 负数:在反码的基础上加一 \end{cases}补码={正数:与原码的反码相同负数:在反码的基础上加一
若有错误,欢迎提出,及时改正。
版权声明:本文为weixin_43667493原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。