求助
一个16位的寄存器所能存储的数据最大值为多少 为什么2的16次方在减去一呢?我有点不懂?教程里面这听不懂 首先你要知道 一个16位的寄存器最大就是FFFF也就是2的16次-1等于十进制的65535至于为什么-1
你这样看啊,2的16次方等于65536,然后计算机都是从0开始的,好的,现在你假象一下从0开始在纸上写出每一个数字,一直写到65536,然后你数一下你一共写了多少个数呢,应该是65537个,因为你是从0开始的,如果从1开始就应该正好是65536个!所以如果你想要写出来正好的65536个数字呢,就要减去1,因为0也算一个数字!
综上所述:2的16次-1(从0开始)等于十进制的65535,正好对应(从1开始)的65535!
不知道说了这么多 你明白了吗?
不管怎样,希望可以帮到你!{:5_95:} 16位是0到15全部为1最大就是2的16次方-1 本帖最后由 梦想与现实 于 2012-4-9 19:54 编辑
最大是16个1就是FFFF也就是2的16次-1等于十进制的65535,也就是64KB(64K=65536)!
至于为什么-1,那是因为计算机是以0开头的,而不是我们所习惯的从1开头!
例如:
(我们习惯的方式):1~10=10个数字
(计算机习惯的方式):0~9=10个数字
不知道这样算不算回答了你的问题呢?{:5_108:}
1111111111111111 这16位二进制数加上1后,变成了10000000000000000,也就是2的16次方,在减去刚刚加的1,也就是2的16次方减1了 就像十进制数,每位最大的是9...是10-1,加上前面的0,刚好十个数,16位寄存器,从0到2的16次方减1,刚好2的16次方个,够形象了吧? 还是有点似懂非懂的 能在详细点吗? 梦想与现实 发表于 2012-4-10 20:34 static/image/common/back.gif
首先你要知道 一个16位的寄存器最大就是FFFF也就是2的16次-1等于十进制的65535
至于为什么-1
懂了,谢谢! 16位是0到15 全部为1最大 就是2的16次方-1
页:
[1]