原码、反码、补码的互相转换
简介:本文是为了计算机组成原理复习,本文以具体题目的方式来对原码、反码、补码的互相转换进行讲解。
概述
原码 :最高位是符号位,0代表正数,1代表负数,非符号位为该数字绝对值的二进制。
反码:正数的反码与原码一致,负数的反码是对于原码,符号位(最高位)不变,其他各位按位取反。
补码:正数的补码与原码一致,负数的补码是对原码按位取反加1,符号位不变。
例题讲解
对于整数
以6为例子,写出它的8位的原码,反码,补码。
原码(它的二进制数):00000110
反码:01111001
补码:00000110
以-6为例子,写出它的8位的原码,反码,补码。
原码(它的二进制数):10000110
反码:11111001
补码:10000010
对于浮点数
以这个题为例子

通过这个题可以看出,浮点数的情况与与整数是一样的,首先是对于正数那么符号位为0,也就是小数点前整数部分的最高位。
然后除了符号位其他位的反码与补码的情况与整数一样,
比如0.10010符号位就是小数点前最高的0
原码:0.10010
反码:0.01101
补码:0.10010







![[附源码]JAVA毕业设计图书借阅系统演示录像(系统+LW)](https://img-blog.csdnimg.cn/f7e71f97708043d596ab7ebe36944073.png)










