一子节多少比特?

吕友志吕友志最佳答案最佳答案

“位”是计算机中最小的数据单位,也是最基本的计算单位;而字节是比位大一点的单位,1个英文字母占1个字节的空间,1个汉字占2个字节。在计算机中,任何信息都可以转换成二进制数进行运算和存储。我们常说的“多少位”实际上就是指的“多少比特”,只不过在计算机中,为了便于识别和处理,往往把具有相同数值的二进制串放到一起来进行处理。这些具有相同数值的二进制串就称为一个字节(1个字节由8个位组成)或一个字(1个字等于两个字节)等等。 你所说的“1个子节有多少比特”问的其实是不对的。因为1个字节等于8个位。如果你非要问1个字节的话那答案就是8比特了。 不过一般来说你说的这种问题都指1个字,也就是2个字节。那么1字又等于多少比特呢?这就要看具体情况了。

首先,要看你所处理的信息本身,例如文本信息,如果每个英文字母用1个字节表示,即每个字母占用2个字节,那么1字就等于16比特。但是如果是汉语这样的文字系统,每个汉字的字形需要2个字节来表示,但每个汉字所占的位置只相当于半个英文单词的位置,也就是说2个字等于4个字节,而一字等于32比特。 而如果你所处理的是图形、图片等信息,情况就更复杂一些,这里1字到底等于多少比特就只能根据文件的具体内容来具体分析了——不同的图形、图片信息采用不同的编码方式,而不同的编码可能使同一个对象占据从50比特到几百比特不等的空间。

另外,还要看你编程语言所使用的编码。对于中文来说,目前最通用的编码就是GBK(简体中文)和Big5(繁体中文)。其中GBK是用2字节表示中文,而Big5则是用1字节。所以如果你是用C语言或者C++编写程序并使用上述两种编码之一存储数据,而且不进行任何特殊处理的话,那么1字就等于20比特,而1字节就是16比特……

我来回答
请发表正能量的言论,文明评论!