【问题】
在8位二进制补码中,10101011 表示的数是十进制下的( )。
A. 43 B. -85 C. -43 D.-84
【解析】
原码、反码和补码:
首位0、1分别表示正、负。
正数的反码是它本身
负数的反码是它原码除符号位外按位取反
正数的补码是它本身
负数的补码是它的反码+1
1. 获得补码对应的反码:
补码:10101011
因为首位是1,所以这个补码是负数
那么这个补码的反码是补码末位-1,得到反码:10101010
2. 获得反码对应的原码:
将反码首位不变,其他位取反,得到原码:11010101
符号位为1表示这是个负数,1010101的十进制数是85。
答案是:-85,选项 B