哈哈
┌─────────────────────────────────────────────────────────────────────────┐
│ 各类处理器(核心执行单元) │
│ 电脑CPU(x86) │ 手机SoC(ARM64) │ STM32(ARM Cortex-M) │ 51单片机(8051) │
│ 【每款处理器对应专属指令集】 │
└───────────────────────────┬─────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────────────┐
│ 第1层 机器语言(二进制0/1) │
│ 规则:由上方处理器指令集决定,不同架构代码互不兼容 │
│ 封装:无,CPU原生直接执行 │
└───────────────────────────┬─────────────────────────────────────────────┘
↓ 一一映射
┌─────────────────────────────────────────────────────────────────────────┐
│ 第2层 汇编语言 │
│ 规则:和机器码一一对应,分架构(x86汇编 / ARM汇编 / 8051汇编) │
│ 封装:仅做符号别名,无额外运行环境 │
└───────────────────────────┬─────────────────────────────────────────────┘
↓ 编译翻译
┌─────────────────────────────────────────────────────────────────────────┐
│ 第3层 原生底层语言:C / C++ / Rust │
│ 定位:全平台通用底层基座,零运行时,可直接操作硬件 │
│ 封装:无额外中转,编译后直达汇编/机器码 │
└───────────────────────────┬─────────────────────────────────────────────┘
↓ 依赖(统一挂靠本层)
┌───────────────────┴───────────────────┐
│ │
┌───────┴───────┐ ┌─────────┴─────────┐ ┌──────────┴──────────┐
│ 第4层分支1 │ │ 第4层分支2 │ │ 第4层分支3 │
│ Go 轻运行时 │ │ Java / C# 虚拟机 │ │ Python/JS 解释脚本 │
│ 封装:极薄 │ │ 封装:中等(虚拟机)│ │ 封装:最重(解释器) │
│ 离CPU最近 │ │ 距离中等 │ │ 离CPU最远 │
└───────────────┘ └───────────────────┘ └─────────────────────┘
←────────── 同属第4层 · 并行分支,互不依赖 ──────────→