原码与补码的转换
[-3]反=[10000011]反=11111100原码反码负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。[-3]补=[10000011]补=1111110...
[-3]反=[10000011]反=11111100
原码 反码
负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。
[-3]补=[10000011]补=11111101
原码 补码
也就是说原码转换成补码是先原码 反码 最后+1成补码。
那么补码转换成原码呢?我看了个视频有点迷惑。
是怎么说的:
由于计算机内部通常用补码来表示二进制数。
正数的补码为自身,对于负数来说,需要将补码转换成原码。
转换的过程分2步:
1。要将这个2进制数所有位反转。
2。第二步是在它的末尾加1
一个是补码转换成原码,一个是原码转换成补码。
到底哪个错了呢?还是都是对的?
方式都是一样的。一个是csdn的讨论贴http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece763105791214f03dc252bd7a7443e82cf5f93130716017ba2f974734713d3b23e3d43b84828adab6065367520b09fcd8b48cabb967e729f26423646c61641850eafcf1d73d621e65eedaa1bf3ffad72c5a1c5a2a84320b944740997808b4d7115dd1ff6033093b1e838022f17adec4072895e605de93431c5508d96256f779680db4b3fb53da16106e0df22b14e05c514b36e113332a15bc77b462740f73f22e8343b13e3eb4a905a6e4153a138b4aeb0bcfc3e8dcb9c428ffbbbb85f957796cefd8871550722&p=8b2a945e8c8013f70cbd9b7d0e51&user=baidu 百度快照方式的。
一个是教学视频
http://ftp5-idc.pconline.com.cn/pub/download/ftpdown/pcsoft/pcedu/video/fanlei/c++/4/c007.html
第4章 7。整型概述 观看时间为中间 时间不长 展开
原码 反码
负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。
[-3]补=[10000011]补=11111101
原码 补码
也就是说原码转换成补码是先原码 反码 最后+1成补码。
那么补码转换成原码呢?我看了个视频有点迷惑。
是怎么说的:
由于计算机内部通常用补码来表示二进制数。
正数的补码为自身,对于负数来说,需要将补码转换成原码。
转换的过程分2步:
1。要将这个2进制数所有位反转。
2。第二步是在它的末尾加1
一个是补码转换成原码,一个是原码转换成补码。
到底哪个错了呢?还是都是对的?
方式都是一样的。一个是csdn的讨论贴http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece763105791214f03dc252bd7a7443e82cf5f93130716017ba2f974734713d3b23e3d43b84828adab6065367520b09fcd8b48cabb967e729f26423646c61641850eafcf1d73d621e65eedaa1bf3ffad72c5a1c5a2a84320b944740997808b4d7115dd1ff6033093b1e838022f17adec4072895e605de93431c5508d96256f779680db4b3fb53da16106e0df22b14e05c514b36e113332a15bc77b462740f73f22e8343b13e3eb4a905a6e4153a138b4aeb0bcfc3e8dcb9c428ffbbbb85f957796cefd8871550722&p=8b2a945e8c8013f70cbd9b7d0e51&user=baidu 百度快照方式的。
一个是教学视频
http://ftp5-idc.pconline.com.cn/pub/download/ftpdown/pcsoft/pcedu/video/fanlei/c++/4/c007.html
第4章 7。整型概述 观看时间为中间 时间不长 展开
8个回答
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
负数补码:
原码为 10101101 补码为11010011
原码为 10101111 补码为11010001
原码为 10101100 补码为11010000
原码为 10101110 补码为11010010
也就是说负数原码最后一位为1,则前面除符号位都要取反;最后一位为0,则倒数两位跟符号位不变,其余取反
可以试试
原码为 10101101 补码为11010011
原码为 10101111 补码为11010001
原码为 10101100 补码为11010000
原码为 10101110 补码为11010010
也就是说负数原码最后一位为1,则前面除符号位都要取反;最后一位为0,则倒数两位跟符号位不变,其余取反
可以试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
源码:X
反码:其二进制代码,除符号位。按位取反
补码:反码+1
例:
1比特数
源码:33,二进制是 0010 0001
好了,反码即是 0101 1110,最高位是符号位,不变
补码则是反码+1,即是 0101 1111
反码:其二进制代码,除符号位。按位取反
补码:反码+1
例:
1比特数
源码:33,二进制是 0010 0001
好了,反码即是 0101 1110,最高位是符号位,不变
补码则是反码+1,即是 0101 1111
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询