`
kongweile
  • 浏览: 517407 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

为什么1字节是8位

 
阅读更多

因为计算机用二进制,所以希望基本存储单位的是2的n次方。 

2^1   =   2     可以表示   4   个符号 
2^2   =   4     可以表示   16   个符号 
2^3   =   8     可以表示   256   个符号 
2^4   =   16   可以表示   65536个符号 

考虑需要表示英文字符和数字以及一些符号的数量,大家认为用几位来表示比较合适? 

早期(其实也不早,70年代都还很流行)计算机也有用10位之类的非标准字长(具体去查资料),而且那时候做数值计算用的计算机一般都是字长越长越好,存储器单位也各不相同,据说性能比8位的标准要好。非数值类的则较早就固定到8位(上面的原因)。   后来机器便宜了,负担不起非标准的内存了,就大家都用8位做为一个字节了。

计算机用二进制来存储,因此二的倍数存储效率就高很多。 

分享到:
评论

相关推荐

    什么是字节对齐,为什么要对齐?

    例如,对于一个char类型数据,默认对齐值是1字节,short类型是2字节,而int、float、double类型则默认是4字节对齐。这会影响到结构体的大小和成员变量的排列。 结构体的成员变量会根据编译器的对齐规则进行排列。...

    字节对齐以及为什么要字节对齐

    1. **基本数据类型的对齐值**:不同数据类型有不同的对齐要求,例如,char型通常对齐到1字节,short型对齐到2字节,int和float对齐到4字节,double对齐到8字节。 2. **程序指定对齐值**:通过`#pragma pack(value)`...

    位校验和16位的字节校验程序

    位校验是对单个比特进行操作,而字节校验则是以字节(通常8位)为单位进行校验。在这个程序中,当位数较大时,使用字节校验会更加高效,因为字节校验通常更易于计算且速度更快。 描述中提到了16位的字节校验,这...

    TIA博途-32位浮点数大小端存储-高低字节转换的具体方法示例(4种字节排列顺序).docx

    例如,32位浮点数的二进制表示由一个符号位、8位指数和23位尾数组成。如果以大端字节序存储,符号位会出现在内存的最低地址,而小端字节序则会让尾数的最低位处于最低地址。 在TIA博途的示例中,FB块被用来演示如何...

    4字节浮点数算法

    根据提供的内容,“4字节浮点数”是由四个字节组成,每个字节分为高四位和低四位,这与传统的IEEE 754浮点数编码方式有所不同。下面我们将详细介绍如何将这些字节转换为浮点数: - **整体结构**:4个字节,每个字节...

    把一个字节按位翻转源代码,C语言编写

    这是因为异或操作具有交换律和结合律,当一个位是1,另一个位是0时,异或结果为1,反之为0。所以,对于01B和10B,异或11B(1的位与0的位对应,0的位与1的位对应),相当于全部位翻转。 当扩展到一个字节(8位)时,...

    STM8S的配置字节OPTION BYTE

    STM8S系列微控制器属于ST公司生产的8位微控制器,广泛应用于工业、汽车和消费类电子领域。STM8S系列微控制器拥有丰富的特性,包括高性能的处理器核心、存储器以及各种外设。配置字节(OPTION BYTE)是这类微控制器中...

    字_字节_字长_位

    字节是由8个二进制位组成的集合,是计算机中数据存储的基本单位。一个字节可以存储一个ASCII字符,如英文字母或数字,或者半个汉字的国标码。字节作为存储和处理信息的基本单位,其重要性在于,大多数计算机系统的...

    易语言文本型转文本字节集 文本字节集转字节集

    而“字节集”则是一个包含字节(8位二进制数据)的数据结构,可以用来存储任意二进制数据,如图片、音频、视频等。在进行网络传输或保存到磁盘时,往往需要将文本型转换为字节集,因为字节集更易于操作和传输。 ...

    单字节上下位机

    一个字节包含8位,可以表示256种不同的状态,这在很多简单应用中已经足够了。这种通信方式通常简单、高效,适合初学者理解和实现。 WIFI小车是一个结合了无线通信和机械控制的项目。在这样的系统中,上位机可能通过...

    Get-1bit-from-1byte.rar_C++ 字节 位

    然后通过按位与运算,如果原始字节的第n位为1,则`bitValue`的结果将是1;如果原始字节的第n位为0,则`bitValue`的结果将是0。 此程序可能还包括检查输入的位索引是否有效(在0到7之间),以及处理负数或非整数值等...

    m1+卡控制字节生成工具

    控制字节通常由8位组成,每一位都有特定的含义和功能。这些位包括:操作命令代码、加密指示位、数据长度指示位、奇偶校验位等。例如,前三位可能表示读取、写入或擦除等基本操作,第四位可能用于指示是否使用加密...

    crc校验字节型算法

    (4)检测移出位是 1 还是 0。若是 1,则生成多项式0x A001 和该寄存器进行“异或”运算。若是 0,则返回步骤(3);(5)重复步骤(3)和(4),直到右移 8 次,这样待测数据的 8 位数据全部进行了处理 ;(6)将...

    M1+卡控制字节解析及生成工具

    这些字节由8位二进制数字组成,每个位对应特定的功能,如读写权限、加密要求等。对于M1 S50卡,其第三块密钥通常用于存储敏感信息,因此对控制字的分析和设置显得尤为重要。这款"M1+卡控制字节生成工具"就是为了解决...

    易语言文本与字节集转换源码,易语言文本到字节集转换

    1. 将字节集型文本转换为普通文本: ```易语言 文本 = “字节集型到字符串”(.字节集型文本) ``` 2. 将文本转换为字节集: ```易语言 新字节集 = “字符串到字节集”(文本) ``` 这样,我们就完成了字节集型文本到...

    十六进制转字节工具

    在C语言编程中,处理字节(Byte)是常见的任务,因为字节是计算机存储和传输数据的基本单位,通常由8位二进制数组成。"十六进制转字节工具"就是为了解决这种需求,帮助开发者将十六进制数值转换为字节形式,便于在...

    TIA博途中如何使用符号方式按位,字节,字访问非结构数据类型?.docx

    这在处理连续的位组时非常有用,例如,如果你想一次性处理字节内的8位。 **按字访问:** 对于按字访问,使用“w”后跟字的偏移量。例如,“inWord.w0”表示访问“inWord”变量的第一个字。这对于处理16位数据很有用...

    char ,int,long,float,double,等在64位和32位下分别占多少字节

    - 但值得注意的是,`long`类型在32位系统中通常是4个字节,而在64位系统中则通常为8个字节。 #### 4. 影响因素 - **编译器实现**: - 编译器的不同实现可能会导致相同的类型在不同的编译器中占用不同的字节数量。...

    汉字编码转换为字节码工具

    例如,如果使用UTF-8编码,一个汉字会被转换成连续的1到4个字节,每个字节的最高位为1,用来标识这是一个多字节序列的一部分。而在GB2312或GBK编码中,每个汉字由两个字节表示,每个字节的最高两位是固定的,用来...

    多字节与UTF-8、Unicode之间的转换

    ### 多字节与UTF-8、Unicode之间的转换 在计算机科学领域,字符编码是将文字映射到二进制数据的一种方式。不同的字符编码方案适用于不同的应用场景。本篇文章主要探讨的是多字节(MBCS)编码与UTF-8、Unicode编码...

Global site tag (gtag.js) - Google Analytics