小数怎么变补码和反码?
4个回答
展开全部
数值有正负之分,计算机为了存放负数,就用一个数的最高位存放符号(0为正,1为负),计算机里就出现了正零和负零现象。如果用1个byte来写,正零是00000000,负零是10000000.正零不等于负零了。为了使涉及负数的运算不出错,想出了反码和补码。
负数,除符号位外的其余各位逐位取反就产生了反码(0取1,1取0)
负数的补码就是反码加一。
正数的原码反码补码是一样的。
小数怎么变补码和反码?先要化成二进制原码。再看小数如何表示。
如果用定点小数,则最高位是符号位,接下来是小数最高位,从原码到补码,反码的做法同上面说的整数做法一样。
如果用浮点数,阶码部分为8位补码定点整数,尾数部分为24位补码定点小数。
阶码部分有一位阶符位,表示指数的符号,其余阶码表示幂次。
尾数部分,数符表示尾数的符号位、其余尾数表示规格化后的小数值。
负数,除符号位外的其余各位逐位取反就产生了反码(0取1,1取0)
负数的补码就是反码加一。
正数的原码反码补码是一样的。
小数怎么变补码和反码?先要化成二进制原码。再看小数如何表示。
如果用定点小数,则最高位是符号位,接下来是小数最高位,从原码到补码,反码的做法同上面说的整数做法一样。
如果用浮点数,阶码部分为8位补码定点整数,尾数部分为24位补码定点小数。
阶码部分有一位阶符位,表示指数的符号,其余阶码表示幂次。
尾数部分,数符表示尾数的符号位、其余尾数表示规格化后的小数值。
展开全部
数值有正负之分,计算机为了存放负数,就用一个数的最高位存放符号(0为正,1为负),计算机里就出现了正零和负零现象。如果用1个byte来写,正零是00000000,负零是10000000.正零不等于负零了。为了使涉及负数的运算不出错,想出了反码和补码。
负数,除符号位外的其余各位逐位取反就产生了反码(0取1,1取0)
负数的补码就是反码加一。
正数的原码反码补码是一样的。
小数怎么变补码和反码?先要化成二进制原码。再看小数如何表示。
如果用定点小数,则最高位是符号位,接下来是小数最高位,从原码到补码,反码的做法同上面说的整数做法一样。
如果用浮点数,阶码部分为8位补码定点整数,尾数部分为24位补码定点小数。
阶码部分有一位阶符位,表示指数的符号,其余阶码表示幂次。
尾数部分,数符表示尾数的符号位、其余尾数表示规格化后的小数值。
负数,除符号位外的其余各位逐位取反就产生了反码(0取1,1取0)
负数的补码就是反码加一。
正数的原码反码补码是一样的。
小数怎么变补码和反码?先要化成二进制原码。再看小数如何表示。
如果用定点小数,则最高位是符号位,接下来是小数最高位,从原码到补码,反码的做法同上面说的整数做法一样。
如果用浮点数,阶码部分为8位补码定点整数,尾数部分为24位补码定点小数。
阶码部分有一位阶符位,表示指数的符号,其余阶码表示幂次。
尾数部分,数符表示尾数的符号位、其余尾数表示规格化后的小数值。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按照整数求补码的路子走,即可。
小数点,你不必考虑。
比如,二进制数是:X = -10.1011。
假设码长是八位,原码:1101 0110。
数值位取反,即得反码:1010 1001。
在末尾加一,就是补码:1010 1010。
小数点,无法表示。
你必须自己记住:三位整数、五位小数。
----------------------
上述方法,称为定点数。
在定点数中,小数点的位置,是不可描述的,必须由编程人自己掌握。
加减运算还好办,乘除,就麻烦了。
后来,有了操作系统,其中有专门处理小数点位置的中断程序。
我们编程时,就可以使用“浮点数”了。
那么,就不需要讨论“小数怎么用补码表示”了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把小数变换成二进制,并补齐八位。
然后,正数的原码反码补码,都和原数相同。
如: 7/16 = 0.011 1000B,
其原码反码补码,就都是:0011 1000。
而: -7/16 =-0.011 1000B,
其补码,就是:1100 1000。
别忘了采纳。
然后,正数的原码反码补码,都和原数相同。
如: 7/16 = 0.011 1000B,
其原码反码补码,就都是:0011 1000。
而: -7/16 =-0.011 1000B,
其补码,就是:1100 1000。
别忘了采纳。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询