(原码反码补码的计算)在一个8位的二进制的机器中,补码表示的整数范围是从_(1)_(小)到_(2)_(大)。这两个数在机器中的补码表示为_(3)_(小)到_(4)_(大)。数0的补码为_(5)_。
做而论道_CS:
实际上,任意负数(-X)的补码,都是:0 - X。
你用二进制简单算一下,立刻就能得到结果。
(-128 的 8 位补码,也就是这样求出来的。)
同理,任意正数(+X)的补码,也都是:0 + X。
这还用算? 0 + X,不就是 X 吗?
即,正数的补码,就是 X 本身!
----------------------
求补码,就是这么简单!
你只要学过二进制减法,你就可以求补码了。
根本就不需要学习 “什么什么教程”。
真值机器数符号位原码反码取反加一符号位不变模同余 ...
这一大滩垃圾,并无任何意义,当然也没有任何用处。
你就是全学会了,你也不可能理解 “减法怎么变加法” !
计算机专家编造这些瞎话,不过就是:
【勾栏从来扮高雅,拿个鞋拔子当如意】。
==========================
由补码换算到十进制数,也极其简单。
你只需记住:【补码首位的权,是负数】。
一般的八位二进制数,各个位的权是:
128、64、32、16、8、4、2、1;
如果是八位的补码,各个位的权则是:
-128、64、32、16、8、4、2、1。
例如,有一个补码:1110 0000,
它代表的十进制是:-128 + 64 + 32 = -32。
如果,另一个补码:0110 0000,
它代表的十进制是:0 + 64 + 32 = +96。
仅仅使用【进制转换】,不就完事了!
|