关于带符号数和无符号数的转换问题?急。。。

来源:百度知道 编辑:UC知道 时间:2024/06/27 07:03:35
二进制数10000111如何转换成无符号数135,和有符号数-121?急,谢谢了啊,我实在菜。。。请告诉我过程。

有符号数和无符号数的区别在于第一位表示正负数,还是数值。换句话说,有符号的二进制数最高位是符号位,剩下的是数值部分的补码(正数的补码是其本身,负数的补码是该数值取反加一)。
10000111说明这个数是负数,0000111的补码是1111001。
故1×2^6+1×2^5+1×2^4+1×2^3+0×2^2+0×2^1+1×2^0 = 121
所以无符号数是-121

对于无符号数可以直接转换不需要考虑正负。
10000111 = 1×2^7 + 0×2^6 +0×2^5 +0×2^4 +0×2^3 +1 ×2^2 +1×2^1 +1×2^0 =135

无符号数二进制数10000111转换为16进制数为87H,87H转换为十进制数为8*16一次方+7*16零次方=128+7=135D,“D”为十进数标志!有符号数二进数10000111采用补码计算,10000111本身是补码要先换成原码为11111001, 11111001中的第一个1为负数标志,所以11111001转换为16进制为-79H,-79H转换为十进制数为7*16一次方+9*16零次方=-(112+9)=-121D。希望你满意!!!!