码迷,mamicode.com
首页 > 其他好文 > 详细

编码解码

时间:2018-07-13 13:30:12      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:问题   字节   返回   bsp   nbsp   计算机   包含   英文   int   

1、为何要编码

  由于计算机底层只能识别二进制数字即0和1,因而所谓的“hello world”对于计算机当然是不认识的,为了让计算机能够识别这些汉子或者数字或者字符,自然就需要一套编码表帮助计算机去理解

  首先,在中文中,一个汉字占两个字节,一个字节占8位,即需要8个0或者1的数字排列在一块。

  重点:
    <1> 8个0或者1 有256种组合,如果没有编码,0000 0000 代表数字0,  0000 0010 代表数字2

    <2> 8个0或者1有256种组合。而·汉字常用的也有近4000了,如果每一种组合代表一个汉子,例如 0000 0000 代表了“你”,0000 0001 代表 ‘最’  0000 0010 代表‘帅’

那我们 对计算机发送这三个 8位二进制数字,它应该会给我们返回 “你最帅”这三个字没毛病对吧

    <3> 汉字很多,8位 只能存储 256 个汉子很明显满足不了需求,所以就需要16位字节存储65536个汉字或者其他的,所以计算机就能识别人类世界的各种字符了

    <4> 所有中文,英文 ,各种编码表所占字节可能都不相同,但是本质一样,你也可以自己设计独一无二的编码表。

 

2  编码延伸

  数据类型有 int ,string 等等,string代表字符,1是int类型,‘1’是字符类型,二者都为1 ,很明显 ,int类型的映射表应该被string类型所包含。所以int 类型的1 是可以被转换为string,而string无法被强制转换为int 类型

3  一通百通

  写代码,大问题小问题先考虑底层,知道底层结构,通常采用的都能是最有效的,代码量最少的方法

 

编码解码

标签:问题   字节   返回   bsp   nbsp   计算机   包含   英文   int   

原文地址:https://www.cnblogs.com/jiangweili/p/9304208.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!