C语言中,16位二进制数可以表示65536B,那么一位二进制数怎么只表示1比特。不是2的一次方吗

C语言

16位二进制数可以表示65536种情况,也即值从0~65535
计算机只能执行二进制机器代码,1位二进制数表示为1bit信息,16位可以表示为16bit信息,。二者是有区别的。追问

上面就是16位二进制数表示64k,这个是什么原因呀

追答

我的理解是,能够表示的最大值是64K吧

追问

一位二进制表示两种情况,对应1bit,那65536种情况就是对应32768bit,也不是64k呀

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-05
准确的说,1个bit可以表示2种状态,n个bit可以表示2n种状态(0~2n-1),16bit可表示65536种状态,0~65535.追问

表示两种状态为1bit,那65536除以2为32768bit,根本就不是64k呀。这点我不大明白

追答

1bit可表示0,1;2个bit可表示二进制00、01、10、11;3bit可表示000、001、010、011、100、101、110、111共8种状态,以此类推,n个bit表示2的n次方。计算机中的64k是64*1024=65536。

本回答被提问者采纳
相似回答