遇到一个基础性的问题(关于原码,补码的相关问题)。求解!
这句话是我从谭浩强《c程序设计》第四版上看到的。他说16位(有符号数)二进制数用补码表示最大数是:0111111111111111,这个我可以理解。但是他又说16位二进制数用补码表示最小值为:1000000000000000,这我就不能理解了。我的想法是:最大的数加负号不就是最小的数了吗?因此16位最大值是+11111111111111,加上负号便是-111111111111111,然后转换成补码便是1000000000000001了。
我想我肯定是我错了,但是就是看不明白谭老爷子这句话。
请高手解答。!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
如果有书的同志,请参阅:p44页下方的说明区域。