负数的十进制进行其它进制的转换,得多少例如,-111,麻烦解释细一些,我想知道原因,不要只给我结果.

问题描述:

负数的十进制进行其它进制的转换,得多少
例如,-111,麻烦解释细一些,我想知道原因,不要只给我结果.

首先先做一些假设,每种类型的计算机对数的存储不一样,即使同一种类型计算机,不同时期也不一样.比如int型,以前是2个字节,现在一般是4个字节.
1,为了方便,假设计算机对int的存储是占2个字节(byte),也是16位(bit),第16位是符号位,1表示负号,0为正号,
也就是说int的范围是-2^15到2^15.
2,再假设计算机采用补码表示整数.(正数的补码是本身,负数的补码是按位取反加1)
那么,十进制111的二进制是0000,0000,0110,1111,那么-111就是1111,1111,1001,0001.再由二进制转换成其他进制,十六进制FF91,八进制1777621