为什么定义8位为一字节,而不是10,16等

如题所述

这其实是一个概念问题。在最早的时候,是约定的8位二进制为一个字节,和ASCⅡ码无关,可以表示256以内的数。
在机器内部,8位或者16位对它来说都一样,都是1或0,而程序设计的时候,人为的要求机器按8位或16位来处理。16位的音乐文件所包含的信息比8位的多得多(差256倍),因此你也可以将16位二进制数看作音乐文件的一个单元,但约定成2个字节。就相当于统一了单位,便于交流。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-15
我好像看过这个问题,记不太清了,好像是很早的时候IBM的机器一统天下,也可能是统了大部分天下,IBM机器是卡片输入信息的,卡片的大小和美元大小相同,为什么要和美元大小相同呢?是因为当时和美元相关的卡槽很多,改造和美元相关的卡槽方便、省成本、省力,所以IBM机器卡片的大小就和美元一样大了。当时一个卡片可以分为80列,大概也就是一次性输入80个0,1的组合吧。规定一字节等于80bit又太大了,就规定了一字节等于8bit
第2个回答  2006-03-21
要明白这个问题,首先要明白二进制

二进制,十进制,16进制计算原理是一样的,只是我们习惯10进制而已
计算机部件只管高、低电平,就等于只认识要么1要么0
下面是二进制计算:
二进制:1+1=10+1=11+1=100+1=101
以下是对应关系
十进制:0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015
二进制:0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
16进制:0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 000A 000B 000C 000D 000E 000F
以下是计算
十进制:0004+0010=0014,0015+0002= 0017
二进制:0100+1010=1110,1111+0010=1,0001
16进制:0004+0010=000E,000F+0002=1,1
如此看来怎么计算只要规则统一,不管是几进制算出来的结果还是那么些个数,就是要相互转换而已。
综合上面规律,10进制和二进制没有直接联系,而二进制和16进制保持4位二进制=1位16进制,比如:101011就何以理解成:0010和1101对应上表16进制应该是2D。
16进制2D比二进制00101101从书写记忆到转换成10进制计算要省事的多是把?
所以16进制是为了简化二进制而衍生的进制(包括8进制,32进制,还可以出来一个64/128进制)

这样看来,8位可以理解了吧?
第3个回答  2006-03-21
这和1+1=2一样,你不需要理解
第4个回答  2006-03-22
有意思呀,你的精神值得我学习呀,因为二进制和直进制的转化就与个8有关,唉有什么办法呢?呵呵
相似回答