负数的二进制如何表示

[复制链接]
查看11 | 回复4 | 2019-10-24 14:13:23 | 显示全部楼层 |阅读模式
在计算机中,负数以其正值的补码形式表达。负数源数据不管符号的正值称为原码,对其进行取反,取反后的数据称为反码。比如原来数据为-5,先不管其符号,将原数据正值(二进制)5为00000101,取反后的反码为11111010.对反码加1.11111010+1=11111011,此值即为-5的二进制表示。
回复

使用道具 举报

千问 | 2019-10-24 14:13:23 | 显示全部楼层
正负表示方法 用字节的最高位表示:"1"表示"正","0"表示"负" 负数 的二进制补码转换成十进制的方法 1、把补码“取反”(把二进制数的各位“1”换“0”,“0”换“1”。比如“101010”取反后为“010101”) 2、把取反后的二进制数“加1” 3、最后用常规的方法把“加1”后的二进制数转换为十进制数
回复

使用道具 举报

千问 | 2019-10-24 14:13:23 | 显示全部楼层
首先要知道规则,在计算机中,负数补码形式表达,正数的补码与原码相同(也就是不变),当然要分清二进制最高位为0表示正,1表示负。负数怎么表示为补码形式呢?就是先把负数的二进制形式变为绝对值的形式(正数),例如你的提问中-17(10010001)的绝对值(正数)就是00010001(+17),然后逐位取反就是11101110,然后最低位加1就得到11101111,这个就是-17的补码。
回复

使用道具 举报

千问 | 2019-10-24 14:13:23 | 显示全部楼层
负数的二进制如何表示正负数,在计算机中,是用补码表示(存放)的。-17的八位补码,是:1110 1111。楼主说的是:原码。但是,计算机中,并没有原码反码。是11101111
回复

使用道具 举报

千问 | 2019-10-24 14:13:23 | 显示全部楼层
在计算机中,负数以其正值的补码形式表达。 反码表示法规定:正数的反码与原码相同,负数的反码为对该数的原码除符号位外各位取反。补码表示法规定:正数的补码与原码相同,负数的补码为对该数的原码除符号位外各位取反,然后在最后一位加1.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行