十进制负数转换成二进制、八进制、十六进制

如题所述

第1个回答  2013-08-03

十进制整数转换为二进制数的方法:除2取余
把十进制数15转化成二进制数
15/2=7 余1
7/2=3 余1
3/2=1 余1
1/2=0 余1
结果:1111
二进制转换为八进制的方法:
将二进制数从右到左,三位一组,高位不够补0
例:二进制数1110111011转换为八进制数:
001 110 111 011(最前面补了两个0)
结果为:1673
二进制转换为十六进制的方法:
二进制数转换为十六进制数的方法也类似,从右到左,四位一组,最高位不够补0
如上题:
0011 1011 1011 (最前面补了两个0)
结果为:3BB
所以:
—617= -1001101001 (二进制)= - 269(十六进制) = - 1151(八进制)
—111= - 1101111(二进制)= - 6F(十六进制)= - 157 (八进制)
—28654 = - 110111111101110(二进制)= - 6FEE(十六进制)= - 67756 (八进制)
如果要在计算机中存储这些数,就要用原码或补码的形式,这时负号“-”用“1”表示。
—111的原码表示为: 11101111,—111的补码表示为:10010001,这是8位二进制数,如果用十六位二进制数表示补码,是:1111111110010001,再转换成八进制,就是:177621,最前面那个“1”补两个“0”就是“001”,是八进制的“1”。

mm1Mu9aCyIwUAN7iZEzz

相似回答
大家正在搜