分别用二进制反码和补码运算求-52-20

2025-05-23 15:26:11
推荐回答(2个)
回答1:

若题目给出的是有符号数原码:

[X]原=10010101B

[X]反=11101010B

[X]补=11101011B

若题目给出的是无符号数原码:

[X]原=10010101B

[X]反=10010101B

[X]补=10010101B

例如:

20-25=20+(-25)

20转换为二进bai制为

原码:du0 10100

补码:0 10100(正数补码与原码相zhi同)

-25转换为二进制为

原码:1 11001

补码:1 00111(负数的补码在原码的dao基础上符号位不变,其他位取反,后加一)

结果:111011为补码

转化为原码为:100101(补码转原码:在原码的基础上减一,符号位不变其他位按位取反)即-5

扩展资料:

求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。

同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。

例:求-5的补码。

-5对应负数5(10000101)→所有位取反(11111010)→加00000001(11111011)

所以-5的补码是11111011。

参考资料来源:百度百科-补码

回答2:

若题目给出的是有符号数原码: [X]原 = 10010101B [X]反 = 11101010B [X]补 = 11101011B 若题目给出的是无符号数原码: [X]原 = [X]反 = [X]补 = 10010101B