先上个图
参考博客:一图看懂编程语言分类
1:汇编/C编译运行原理
预处理, 展开头文件/宏替换/去掉注释/条件编译 (test.i main .i)
编译, 检查语法,生成汇编 ( test.s main .s)
(汇编在下一步开始)
汇编, 汇编代码转换机器码 (test.o main.o)
链接 链接到一起生成可执行程序 a.out/a.exe
参考博客:
c语言编译过程详解,预处理,编译,汇编,链接(干货满满)
2:Java编译运行原理
.java→.class→机器码
java编译器 (编译) → 虚拟机(解释执行) → 解释器(翻译) → 机器码
3:js,vbs,bat等脚本语言运行原理
例如,在日常例子中,你必须要编译一个C,Java程序才可运行它.
脚本语言是直接运行于某个运行环境的,
例如Js 有各种浏览器,windows内置的引擎,node等运行环境,vbs 也有各种浏览器,windows内置的引擎。