带你了解什么是编码, 什么是解码?

预习知识

       电脑是由电路板组成,电路板里面集成了无数的电阻和电容,交流电经过电容的时候,电压比较低记为低电平,用O表示,交流电流过电阻的时候,电压比较高,记为高电平,用1来表示;所以每一个1和O在计算机中被称为位,也就是bit位。然而,如果使用一个位来表示计算机中的最小存储单元,那么这个存储单元只能存储O或者1,存储的范围太小了,所以我们规定用用8个bit位为一组来表示计算机的最小存储单元。8个位每个位上能存储O或者1,则byte的存储范围则是00000000-11111111(换算成整数即0-255)。这个最小存储单元就是byte字节。
       计算机的底层只能存储0和1,如果是日常生活中遇到的数字比如127,这个可以通过10进制和二进制的转换从而让计算机存储01111111,但是如果计算机存储类似于汉字、英文字符、符号字符等内容,是如何存储的呢?

解码和编码详细过程

带你了解什么是编码, 什么是解码?_第1张图片

总结:

根据上图解释说明,计算机提供了很多的编码表记录了字符和数字的一一对应关系,编码就是把字符对应编码表中的码值存储在电脑中,而解码则是把码值在编码表中的对应的字符展现出来。


 注意:计算机中存储一个数是用二进制来表示的,比如存储127,那么计算机的底层是 0111 1111,人看这些二进制的数通常都是眼花练乱的,如何方便而规整的表示这些二进制数呢,不妨引入十六进制。二进制换算成十六进制,则是每四位为一组转换为16进制数即可,比如0111 1111 这个数前4位0111转换为7,后4位转换为F,则最终的16进制数是 7F,一般我繁琐的二进制数使用十六进制数来表示会比较方便规整,所以人们习惯用十六进制数来表示码值

 

你可能感兴趣的:(Java干货,编码,编码学,java)