Skip to content

Latest commit

 

History

History
267 lines (184 loc) · 5.51 KB

026-564947-编码_encode_编号_字节_计算机.sy.md

File metadata and controls

267 lines (184 loc) · 5.51 KB
show version enable_checker
step
1.0
true

编码(encode)

回忆上次内容

  • 上次了解了古代的一种编码方式
    • 易有太极
    • 是生两仪
    • 两仪生四象
    • 四象生八卦
    • 八卦重卦 得 八八六十四卦

图片描述

  • 可以把生活中的事物、状态
    • 进行编码
  • 不过一个字节
    • 只有8-bit
  • 如果 需要编码的状态
    • 超过字节的容量 怎么办 呢?🤔

更多编码

  • 超市中需要编码的商品
    • 超过256中
  • 一个字节放不下了
    • 就需要更多字节 来 编码

图片描述

  • 需要 称重的
    • 每次称重 都有编码

图片描述

  • 编码编码
  • 具体来说
    • 什么是呢?

  • 建立起事物和数字之间的关系
    • 就是

图片描述

  • 编织
  • 编码
  • 编程
  • 编瞎话
  • 那什么 是呢?

码(code)

  • 有各种码
    • 条码、二维码、密电码
    • 砝码、优惠码、验证码
    • 代码、字节码、邀请码
  • code
    • 来自于法语

图片描述

  • 早年间是木板子上记录的
    • 判例汇编

图片描述

  • 在电报年代
    • 指的是电报码

计算机编码

  • 编程其实就是
    • 把 生活中的各种逻辑
      • 对应成 计算机中的各种指令代码

图片描述

  • 这就是编程
    • 也叫写代码
  • 代码也是码
    • 代的意思是指代、代替
    • 码指的是cpu指令码

he is coding...

  • 他再把需要的逻辑和对象
    • 编写为计算机cpu的指令

图片描述

  • 明白了码(code)
  • 那么这个编码(encode)
    • 是什么意思呢?

encode

  • encode
    • en的意思是使东西
      • 成为什么样子
      • 进入什么状态

图片描述

  • 放在前面

    • enlarge
    • endanger
    • ensure
    • encourage
  • 放在后面

    • golden
    • wooden
    • woollen
    • darken
  • 前后都放

    • enlighten 启蒙
      • 使心灵亮起来
      • 山水蒙䷃ 开蒙 启蒙
  • 这是 编码英文 encode 的意思

  • 可以试试用python编码吗?

python编解码

  • 将 字符a 编码

图片描述

  • str(字符串)'a' encode(编码)之后
    • 得到 b'a'
  • b'a' 的 类型是
    • bytes
    • bytes是什么意思呢?
  • help(bytes)

bytes

  • byte就是字节

图片描述

字节的十六进制形态

  • b'a' 就是 b'\x61'

图片描述

  • 其中
    • b 的意思是bytes(字节序列)
    • x 的意思是 hexadecimal(十六进制)

图片描述

  • 这个encode和hex 有点像

多个字符

  • 想要查询encode的帮助

图片描述

  • 需要先判断类型
help(str.encode)
  • 查询帮助

图片描述

  • 可以把 多字符的字符串
    • 编码为 一套字节 吗?

多字符编码

  • 确实可以多字符编码

图片描述

  • 这些编码规则叫什么来着?

ascii

  • 回忆安装ascii应用的过程
    • sudo apt install ascii

图片描述

  • 从 a 到 e

    • 确实就是
      • 从 0x61 到 0x65
  • 如果很多字符编码到字节

    • 会是什么样子呢?

安徒生童话

  • 就是纯文本文件
    • 318K个字符

图片描述

  • 对应318K个字节

hex

  • 查询帮助

图片描述

  • hex可以把任意的数字
    • 变成 十六进制的 字符串形式
    • 如果 数字小于255
      • 确实可以转化成
        • 2位16进制的形态
    • 但是 类型 不是 字节
      • 而是 十六进制的字符串形态

图片描述

  • 而str.encode返回的是
    • 字节类型
  • 两者有关联吗?

关联

  • 两者确实 是 关联的
    • 字符序号的十六进制形态
      • 恰好就是
        • 字符 在字节中存储的样子

图片描述

  • 字符"a"序号的 十六进制形态
    • 是 "0x61"
  • 字符串"a"编码到计算机中
    • 字节状态 是 b"\x61"
  • 都是61

总结

  • code就是码
    • 最早也指电报码
    • 后来有各种码
      • 密码
      • 砝码
      • 条码
    • 都指的都是
      • 把各种事物编个号
  • encode就是编码
    • 编码就是给事物编个号

图片描述

  • 给事物编号之后
    • 放到计算机的字节中
  • 计算机编好码的字节
    • 如何找回原来对应的事物呢?🤔
  • 我们下次再说👋🏻