1.6存储单元

 存储器被划分成若干个存储单元,每个存储单元从0开始顺序编号。列如一个存储器有128个存储单元,编号从0~127,如下图所示:

    

    那么一个存储单元能存储多少信息呢?我们知道电子计算机的最小信息单位是bit(音译为比特),也就是一个二进制位

 

    8个bit组成一个Byte,也就是通常所讲的一个字节。微型机存储器的存储单元可以存储一个Byte,即8个二进制位。一个存储器有128个存储单元,它可以存储128个Byte。

 

    微机存储器的容量是以字节为最小单位来计算的。对于拥有128个存储单元的存储器,我们可以说,它的容量是128个字节。

 

 对于大容量的存储器一般还用以下单位来计量容量(以下用B代表Byte):

 

    8bit=1B  1024B=1KB  1024KB=1MB  1024MB=1GB  1024GB=1TB

 

    磁盘的容量单位同内存是一样的,实际上以上单位,是微机中常用的计量单位。

 

 问:为什么一个字节要等于8个二进制位?

 答:简单的说,就是编码发展的过程。从最早的打孔I/O到后来的键盘显示器,我们处理的数据也在不断发展:数字、控制符、符号、英文字符、多国语言字符。

 

 处理整数运算我们只需要编码0-9十个数字和符号,4 bits就应该够了;后来我们要处理英文字符,需要给52个大小写字母编码;之后有了高级语言,要为高级语言的符号编码。表示每个单元的bit也在不断增加,一直增加到8bits,诞生了ASCII编码的标准。已经能涵盖日常使用的所有编码了,所以给每个单元起了个名字叫Byte

 

    1 Byte = 8 bits 其实是一个历史习惯问题,在当今的国际化unicode编码环境下1 byte已经很难成为表示一个字符的单元。在上文中Bob Bemer的建议是不要使用"byte"这个名称表示8 bits,而是用"octet"(八位组),因为有些设备的基本字符单元不是8bits。在通信与网络的资料中,经常能看到“octet”的使用。

 

    BTW:在很多入门书中,仍然存在“1个英文字母占用1字节,一个汉字占用2字节”不负责任的说法,丝毫不提编码条件(编码字符集&字符编码方案),坑人无数。

 

 问:解释下一个英文字母占用1字节,一个汉字占用2字节”不负责任的说法?

 答:一个汉字占用的存储空间大小取决于使用的编码,一个汉字占2字节,是在说国内的中文编码标准GB2312、GBK、BG18030。

 

 现在更通用的编码标准是 Unicode,Unicode又有不同的实现,如UTF-8、UTF-16,在常用的UTF-8下,一个汉字通常是 3 字节。

 

 问:你觉得你这样做自问自答有意思吗?

 答:我个人觉得有意思,走自己的路,让别人去说吧。

 

 问:哦,挺有意思的。期待你后续的问答。

 答:当然,我还用继续努力下去。

  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值