当前位置:网站首页>What are compiled languages and interpreted languages?
What are compiled languages and interpreted languages?
2022-07-07 16:07:00 【Le_ Sam】
First, what are compiled languages and interpreted languages ?
Computers can't understand high-level languages , Can not directly execute high-level language , It can only understand machine language directly , So if a program written in any high-level language wants to be run by a computer , It has to be converted into computer language , That's machine code .
Computers can't understand high-level languages , Can not directly execute high-level language , It can only understand machine language directly , So if a program written in any high-level language wants to be run by a computer , It has to be converted into computer language , That's machine code . There are two ways of this transformation :
1. compile
2. explain
Therefore, high-level languages are also divided into compiled languages and interpreted languages .
The main difference is that , The former can run on the platform after compiling the source program , The latter is compiled during runtime . So the former runs fast , The latter has good cross platform performance .
Compiler language
Use a special compiler , For a specific platform , Compile the high-level language source code into machine code that can be executed by the hardware of the platform , And packaging into the platform can identify the executable program format .
characteristic
Before a program written in a compiled language is executed , A special compilation process is needed , Compile the source code into a machine language file , Such as exe File format , When you want to run again later , You can use the compilation results directly , Such as direct operation exe file . Because it only needs to be compiled once , You don't need to compile later , So compiler language is efficient .
summary
1. Compile into platform related machine language files at one time , The runtime is detached from the development environment , High operational efficiency ;
2. Platform specific , Generally, it can't be ported to other platforms ;
3. The existing C、C++、Objective All of them belong to compiler language .
Explanatory language
Use a special interpreter to interpret the source program line by line into a specific platform machine code and execute it immediately . It is only when the code is executed that the interpreter dynamically translates and executes line by line , Instead of translating before execution .
characteristic
Interpretive languages don't need to be compiled in advance , It directly interprets the source code into machine code and executes it immediately , So as long as a platform provides the corresponding interpreter can run the program .
summary
1. Every time an interpreted language runs, it needs to interpret the source code as machine code and execute it , Low efficiency ;
2. As long as the platform provides the corresponding interpreter , You can run the source code , So it is easy to transplant the source program ;
3.Python Etc. belong to explanatory language .
Compiled and interpreted , Both have advantages and disadvantages
The former is due to the fast execution of the program , Lower system requirements under the same conditions , So it's like developing an operating system 、 Large applications 、 The database system uses it all the time , image C/C++、Pascal/Object Pascal(Delphi) They are all compiled languages , And some web script 、 Server script and auxiliary development interface do not require high speed 、 Programs that have certain requirements for compatibility between different system platforms usually use interpretative languages , Such as Java、JavaScript、VBScript、Perl、Python、Ruby、MATLAB wait .
About java
Java Different from other languages . because java There are different for different platforms JVM, Cross platform implementation . therefore Java Language has a saying that compilation runs everywhere .
1. You can say it's compiled : Because of all the Java The code is compiled ,.java There is no use without compilation .
2. You can say it's interpretive : because java The code cannot be run directly after compilation , It is interpreted to run in JVM Upper , So it's interpreted to run , That's even the explanation .
3. however , current JVM For efficiency , There are some. JIT Optimize . It will .class The binary code of is compiled into local code to run directly , therefore , It's compiled again .
Personally think that ,java It's an interpretive language , Because though java You also need to compile , Translate it into .class file , But it's not a machine recognizable language , It's bytecode , In the end jvm The explanation of , In order to execute , It's also java Cross platform reasons . So I said java It's compiled , It's also explanatory , But if it has to be classified , From a conceptual definition , I'm afraid java It should be put into explanatory language .
Compiled languages include :C、C++、Delphi、Pascal、Fortran
Explanatory languages include :Java、Basic、javascript、python
边栏推荐
- Notification uses full resolution
- 统计学习方法——感知机
- SPI master RX time out interrupt
- Webcodecs parameter settings -avc1.42e01e meaning
- Bidding announcement: 2022 Yunnan Unicom gbase database maintenance public comparison and selection project (second) comparison and selection announcement
- Description of vs common shortcut keys
- LeetCode1_ Sum of two numbers
- 航運船公司人工智能AI產品成熟化標准化規模應用,全球港航人工智能/集裝箱人工智能領軍者CIMC中集飛瞳,打造國際航運智能化標杆
- Enterprise log analysis system elk
- Bidding announcement: Panjin people's Hospital Panjin hospital database maintenance project
猜你喜欢
Vite path alias @ configuration
Description of vs common shortcut keys
深度之眼(六)——矩阵的逆(附:logistic模型一些想法)
JS array foreach source code parsing
【微信小程序】Chapter(5):微信小程序基础API接口
Three. JS introductory learning notes 19: how to import FBX static model
强化实时数据管理,英方软件助力医保平台安全建设
What about the pointer in neural network C language
Syntax of generator function (state machine)
[wechat applet] Chapter (5): basic API interface of wechat applet
随机推荐
UE4 exports the picture + text combination diagram through ucanvasrendertarget2d
SysOM 案例解析:消失的内存都去哪了 !| 龙蜥技术
强化实时数据管理,英方软件助力医保平台安全建设
AB package details in unity (super detail, features, packaging, loading, manager)
融云斩获 2022 中国信创数字化办公门户卓越产品奖!
Use moviepy Editor clips videos and intercepts video clips in batches
Unity的三种单例模式(饿汉,懒汉,MonoBehaviour)
招标公告:盘锦市人民医院盘锦医院数据库维保项目
Odoo集成Plausible埋码监控平台
TCP framework___ Unity
Step by step monitoring platform ZABBIX
Bidding announcement: Fujian Rural Credit Union database audit system procurement project (re bidding)
MySQL数据库基本操作-DQL-基本查询
Shader Language
markdown公式编辑教程
Three. JS introductory learning notes 11:three JS group composite object
Shader basic UV operations, translation, rotation, scaling
95.(cesium篇)cesium动态单体化-3D建筑物(楼栋)
Description of vs common shortcut keys
Mesh merging under ue4/ue5 runtime