已知8位机器码10110100,它是补码时,表示十进制的真值是多少

我要详细答案 怎么算得 谢谢
2024-10-29 04:11:50
推荐回答(4个)
回答1:

-76。

最前面那位是符号位,代表符号,后七位是数字位,补码求原码,正数不变,负数除符号位其它取反再加1,所以求得原码后,在将除符号位后七位二进制转换为十进制。

首先第一步求1011 0100的十进制数为180然后256-180=76。-76的补码就属是180的原码。

扩展资料:

原码是有符号数的最简单的编码方式,便于输入输出,但作为代码加减运算时较为复杂。一个字长为n的机器数能表示不同的数字的个数是固定的2^n个,n=8时2^n=256。

用来表示有符号数,数的范围就是 -2^(n-1)-1 ~ 2^(n-1)-1,n=8时,这个范围就是 -127到+127。

但是在不需要考虑数的正负时,就不需要用一位来表示符号位,n位机器数全部用来表示是数值,这时表示数的范围就是0~2^n-1,n=8时这个范围就是0~255.没有符号位的数,称为无符号数。

回答2:

-76,最前面那位是符号位,代表符号,后七位是数字位,补码求原码,正数不变,负数除符号位其它取反再加1,所以求得原码后,在将除符号位后七位二进制转换为十进制

回答3:

答案:11001100
先求反码,反码=补码-1,所以反码等于10110011
然后除了第一位,其他的0变1.1变0(第一位是符号位)

回答4:

知道补码,求真值,是非常简单的。

既不用你求“反码原码”,也不要你想着“符号位不变”。

“取反加一”或“减一取反”,都是不需要的。

你就直接进行【数 制 转 换】即可。

比如:

八位的补码:1011 0100

首位 1,既代表负数,也代表-128。

其余是数值位:32 + 16 + 4 = 52。

求和,立即就得出真值:-128 + 52 =-76。

----------

补码若是:0011 0100。

其真值就是:32 + 16 + 4 = +52

简单不简单?意外不意外?

有人说:原码是最简单的编码方式。显然是错的!