请问下 您所说的那个“16位寄存器所能储存的数据的最大值是2^16-1=65535,算式中为什么要减去一个1”?

问题描述:

请问下 您所说的那个“16位寄存器所能储存的数据的最大值是2^16-1=65535,算式中为什么要减去一个1”?
实在没有弄懂我觉得就不该减一 怎么用逻辑思考的方法来解答
如果是10000 0000 0000 0000我认为就是2^17-1了
望解答非常感谢

因为最小值是0,最大值是2^16-1=65535,可以表示的总数据有2^16=65536个
至于2^16这个数,写出来就是10000 0000 0000 0000 ,用16位表示不了它,需要17位才可以表示.
就好像10进制,对于1位的十进制数,其表示范围为0~9,最大表示的数字为9,即10^1-1
还不明白的话,请继续问