请问1000 0000 0000 0000 代表有符号的16进制数如何补码运算,以及如何进行十进制转换?在对其进行十进制转换时,是不是要对后面的15为进行取反,变为1111 1111 1111 1111,然后再加1,变成 1 0000 0000 0000 00
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/04 23:10:16
![请问1000 0000 0000 0000 代表有符号的16进制数如何补码运算,以及如何进行十进制转换?在对其进行十进制转换时,是不是要对后面的15为进行取反,变为1111 1111 1111 1111,然后再加1,变成 1 0000 0000 0000 00](/uploads/image/z/4074292-28-2.jpg?t=%E8%AF%B7%E9%97%AE1000+0000+0000+0000+%E4%BB%A3%E8%A1%A8%E6%9C%89%E7%AC%A6%E5%8F%B7%E7%9A%8416%E8%BF%9B%E5%88%B6%E6%95%B0%E5%A6%82%E4%BD%95%E8%A1%A5%E7%A0%81%E8%BF%90%E7%AE%97%2C%E4%BB%A5%E5%8F%8A%E5%A6%82%E4%BD%95%E8%BF%9B%E8%A1%8C%E5%8D%81%E8%BF%9B%E5%88%B6%E8%BD%AC%E6%8D%A2%3F%E5%9C%A8%E5%AF%B9%E5%85%B6%E8%BF%9B%E8%A1%8C%E5%8D%81%E8%BF%9B%E5%88%B6%E8%BD%AC%E6%8D%A2%E6%97%B6%2C%E6%98%AF%E4%B8%8D%E6%98%AF%E8%A6%81%E5%AF%B9%E5%90%8E%E9%9D%A2%E7%9A%8415%E4%B8%BA%E8%BF%9B%E8%A1%8C%E5%8F%96%E5%8F%8D%2C%E5%8F%98%E4%B8%BA1111+1111+1111+1111%2C%E7%84%B6%E5%90%8E%E5%86%8D%E5%8A%A01%2C%E5%8F%98%E6%88%90+1+0000+0000+0000+00)
ߧ&'}SMxSEQ/6'axcLyߟ1aDy=OM8nY"A|Օ&SKP17=vV&n*\xdn`|,$_zv!禯Pw1ʃ;gϩt/xȾ}tRte;Y:8TY5ִe0Фn1aq;1),% P$`B4:6R pR xH7E;(1:-S%6%{ @&QW6p~);My<6kqc^?7gz%\t\VI#.hk3mJƮs]HQu?#ja&1>0WYfXjZ(ctc&,z]psS^zg̡xHDcoo?
J P9rvނi ZU{=t#Z&o
请问1000 0000 0000 0000 代表有符号的16进制数如何补码运算,以及如何进行十进制转换?在对其进行十进制转换时,是不是要对后面的15为进行取反,变为1111 1111 1111 1111,然后再加1,变成 1 0000 0000 0000 00
请问1000 0000 0000 0000 代表有符号的16进制数如何补码运算,以及如何进行十进制转换?
在对其进行十进制转换时,是不是要对后面的15为进行取反,变为1111 1111 1111 1111,然后再加1,变成 1 0000 0000 0000 0000 ,这样就变成17位了啊,请问这是怎么回事,或者正确的是如何该如何理解的啊?
请问1000 0000 0000 0000 代表有符号的16进制数如何补码运算,以及如何进行十进制转换?在对其进行十进制转换时,是不是要对后面的15为进行取反,变为1111 1111 1111 1111,然后再加1,变成 1 0000 0000 0000 00
这个问题很简单 楼主别想复杂:
楼主错把化为10进制搞成了化为补码了.
化为10进制和化为补码是完全两回事,因为补码仍然是2进制,是另一种2进制表示形式.
下面我将认为楼主要求2进制补码把这道题解一遍:
在解决这个问题之前,楼主需要明白的是,0用原码表示时有两种表示
+0和—0 +0的是0000符号位是0 —0是1000 符号位是1
我要多说一句,补码可以表示的范围是除掉符号位后的 -2^n~2^n-1
如果你的原码压根不在这个范围,就无法表示.
楼主提供的原码是 1 000 0000 0000 0000,这是原码负0(—0)
而在补码中,是没有负0概念的,补码的0和负0都是0.
所以楼主必须要化成+0,即0 000 0000 0000 0000 再来求补码.
所以,您这道题出的本身就很奇怪.因为没有哪个人用负0(—0)求补码
如果您坚持要求的话,就按照我上面说的,化正求补.因为补码只支持正0.
补码是2进制数表示法,不是10进制.转为10进制和求补码不一样,楼主别混淆了
第二个问题:
我在前面已经说到1000 0000 0000 0000是二进制时,才可以用除符号求反+1求2进制补码.
化成十六进制时,从左到右每4位合成一位十六进制位,因为2的4次方=16.
所以是(1000)2=(8)16 (0000)2=(0)16 最终结果是(8000)16依然从左到右
再补充一点给楼主:
为什么4位2进制表示1位16进制:
进制之间的转化的标准是 转化之后他们所代表的值不变.
如16进制中的10,在10进制中,其实是16.因为1^16=1^10+6
而2^4=16::0-15这16个数,就用4位来2进制来表示,可以不重不漏.左边一个16进制数恰对应右边一个4位的2进制数.(这是数学上的排列,这个楼主肯定懂吧?)
楼主可能会问我为什么高位也可以如此,那是因为×16^n 也等于×2^4^n嘛.
至于1000 0000 0000 0000怎么样去求10进制,
1×2^12 = 1×10^...+ 1×10^...这样求就OK