编译型语言和解释型语言(编译型语言和解释型语言的特点)

yumo6665个月前 (07-28)技术文章34

年代区分

从硬件技术和软件需求,计算机发展初期,没有可能发展真正的解释型语言,运行速度和内存都受限,只有给机器喂二进制代码才能勉强跑起来。但事实上,解释型语言却在计算机发展很早的时期曾经出现过,当然这和前面一段话并不冲突,它是由自身的考虑,也并非为了推广。

各种类型语言

  • 直接编译成二进制native代码的语言,属于编译型语言,如Fortran/Pascal/C/Objc/C++/Swfit/Rust/Go/仓颉.
  • 不需要编译成中间代码或二进制代码,可由解释器读取并执行,属于解释型语言,如Perl/PHP/Python/JavaScript/Ruby.
  • 需要先编译(成中间代码),再由解释器或虚拟机执行,属于混合型语言,如Java/C#/VB.NET.
  • VB6很特殊,开发时像解释型语言,发布应用程序可编译成伪代码P-code + 部分本机代码,运行时需要VB运行时解释P-code并执行.

互相转换

编译型语言一定可以做成解释型,但解释型一般却不能反向操作。比如经典的TCC编译器,只需要一个-run参数即可让编译器编译并执行给出结果,本质上,每种编译型语言都可以这样做。解释型语言主要为了修改方便,没有必要先“编译”,这是设计的一部分。








若文章对您有帮助,欢迎关注。助您在编程路上越走越好!

微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、iOS、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

相关文章

一文讲清Python语言的应用与实践(python语言的运用)

摘要:Python作为一门简单易学且功能强大的编程语言,广受程序员、数据分析师和AI工程师的青睐。Python不仅语法简洁、易于上手,而且功能强大,几乎可以胜任各种类型的编程任务。本文将从“Pytho...

Python自动化办公学习笔记11——布尔类型、变量赋值、类型转换

1. 布尔类型(Boolean)在Python中,布尔类型是整数类型的子类,其中`True`表示"真"或"是",`False`表示"假"或"否&...

Python 中Typing,你了解多少(python trie)

Typing是一个功能强大的内置 Python 模块,它为类型提示提供运行时支持。可以强制 Python 在运行时进行类型检查。在了解模块的作用 typing 之前,需要了解动态和静态类型的编程语言。...

python王牌学习-2.python简介(python基础介绍)

再去给大家讲一下python的简介。python是一名90后,他是在一九八九年圣诞节的时候由一个程序员荷兰人叫做极多范罗苏姆去开发的这样的一个语言。他最开始的时候就是为了打发无趣的、无聊的圣诞节,但是...

Pyrefly和Ty:比较两个新的Rust驱动的Python类型检查工具

  来自Meta的Pyrefly和来自Astral的Ty以Rust的速度为Python代码库提供类型检查。  Python最新一波第三方工具最引人注目的是,它们不是用Python编写的。相反,许多用于...

Python 静态方法、类方法与多态方法:特性解析与实战应用

在 Python 面向对象编程的重要概念,它们各自具备独特的特性和应用场景,为开发者提供了多样化的编程方式。静态方法不依赖实例状态,类方法以类为操作主体,多态方法则实现了不同类对象对同一消息的差异化响...