字数
519 字
阅读时间
3 分钟
- Computer是严格执行有限规则的信息处理器
- 一切的开始:是一个开关,两个状态,三种结构
- 后来的故事:是无限的可能
- 任何数学问题,凡能写出算法,有足够的时间,有足够的存储,有足够的能量,计算机就能算出结果(图灵, 1936年)【成功证明了吗?怎么证明的?】
- 成功证明了吗?怎么证明的?
- 每个字符都有对应的数值编码(ASCII或Unicode)【ASCII或Unicode具体是怎样运作的?】
- 执行python文件时,操作系统把文件内容从硬盘读到内存,
- 词法分析:传递给python解释器拆成一个个Token。
- Token类型
- 标识符的词法名称是NAME(例:print)
- 左括号的词法名称是LPAREN(例:
() - 字符串字面量的词法名称是STRING(例:"Hello, world!")
- 右括号的词法名称是RPAREN(例:
)) - 换行符的词法名称是NEWLINE(例:行尾的换行)
- Token类型
- 语法分析:解释器将Token组合成抽象语法树(AST)
- 抽象语法树(AST)【具体什么是抽象语法树?】
- Python编译器把AST编译成字节码,字节码是 Python 虚拟机认识的指令集。Python 虚拟机开始逐条执行字节码【字节码具体是怎么样的?】
- 字节码:
- 操作系统调用:【?】
- 硬件输出:【?】 手指按键盘 → 键盘微控制器 → USB → 键盘驱动 → 终端程序 → Python解释器 → 词法分析→ 语法分析 → 编译字节码 → 虚拟机执行 → print函数 → write系统调用【具体什么是write系统调用?】 → 内核文件表【是什么?】→ 终端驱动【具体?】 → 显存【具体作用?】 → 显卡 → HDMI【HDMI具体是什么?】 → 显示器像素