徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
自由
比浏览器更快的访问!
 

字节码

指数 字节码

位元組碼(Bytecode)通常指的是已經經過編譯,但與特定機器碼無關,需要直譯器轉譯後才能成為機器碼的中間代碼。位元組碼通常不像源碼一樣可以讓人閱讀,而是編碼後的數值常量、引用、指令等構成的序列。 位元組碼主要為了實現特定軟體運行和軟體環境、與硬體環境無關。位元組碼的實現方式是通過編譯器和虛擬機器。編譯器將源碼編譯成位元組碼,特定平臺上的虛擬機器將位元組碼轉譯為可以直接執行的指令。位元組碼的典型應用為Java bytecode。.

10 关系: 中間語言編譯器编码直譯器通用中间语言虛擬機器Java字节码WebAssembly源代码机器语言

中間語言

中間語言(Intermediate language),在計算機科學中,是指一種應用於抽象機器(abstract machine)的程式語言,它設計的目的,是用來幫助我們分析计算机程序。這個術語源自於編譯器,在編譯器將原始碼編譯為目的碼的過程中,會先將原始碼轉換為一個或多個的中間表述,以方便編譯器進行最佳化,並產生出目的機器的机器语言。通常,中間語言的設計與一般的机器语言有三個不同之處:.

新!!: 字节码和中間語言 · 查看更多 »

編譯器

编译器(compiler),是一種電腦程式,它會將用某種程式語言寫成的原始碼(原始語言),轉換成另一種程式語言(目標語言)。 它主要的目的是將便于人编写、阅读、维护的高级计算机语言所寫作的原始碼程式,翻译为计算机能解读、运行的低阶机器语言的程序,也就是執行檔。编译器将原始程序(source program)作为输入,翻译产生使用目标语言(target language)的等价程序。源代码一般为高阶语言(High-level language),如Pascal、C、C++、C# 、Java等,而目标语言则是汇编语言或目标机器的目标代码(Object code),有时也称作机器代码(Machine code)。 一个现代编译器的主要工作流程如下: 源代码(source code)→ 预处理器(preprocessor)→ 编译器(compiler)→ 汇编程序(assembler)→ 目标代码(object code)→ 链接器(Linker)→ 執行檔(executables), 最後打包好的檔案就可以給電腦去判讀執行了。.

新!!: 字节码和編譯器 · 查看更多 »

编码

编码是信息从一种形式或格式转换为另一种形式的过程。解码,是编码的逆过程。.

新!!: 字节码和编码 · 查看更多 »

直譯器

譯器(interpreter),是一種電腦程式,能夠把高階程式語言一行一行直接轉譯執行。直譯器像是一位「中間人」,每次執行程式時都要先轉成另一種語言再作執行,因此直譯器的程式運行速度比較緩慢。它不會一次把整個程式轉譯出來,而是每轉譯一行程式敘述就立刻執行,然後再轉譯下一行,再執行,如此不停地進行下去。 直譯器的好處是它消除了編譯整個程式的負擔,程式可以拆分成多個部分來模組化,但這會讓執行時的效率打了折扣。相對地,編譯器已一次將所有原程式碼翻譯成另一種語言,如機械碼,執行時便無需再依賴編譯器或額外的程式,故而其運行速度比較快。.

新!!: 字节码和直譯器 · 查看更多 »

通用中间语言

通用中间语言(Common Intermediate Language,簡稱CIL,发音为"sill"或"kill")是一种属于通用语言架构和.NET框架的低階(lowest-level)的人类可读的编程语言。目标为.NET框架的语言被编译成CIL,然后汇编成字节码。CIL类似一个面向对象的組合语言,并且它是完全基于堆栈的。它运行在虚拟机上,其主要的语言有C#、Visual Basic.NET(VB.NET)、C++/CLI以及J#。 在.NET语言的测试版中,CIL原本叫做微软中间语言,即Microsoft Intermediate Language,简称MSIL。由于C#和通用语言架构的标准化,在.Net开发平台下,所有语言(C#、VB.NET、J#、C++/CLI)都会被编译为MSIL,再由CLR负责运行,字节码现在已经官方地成为了CIL。因此MSIL有時仍會與CIL混用,特别是那些.NET语言的老用户。更详细的信息可以参看微软的。.

新!!: 字节码和通用中间语言 · 查看更多 »

虛擬機器

虚拟机(virtual machine),在计算机科学中的体系结构裏,是指一种特殊的软件,可以在计算机平台和終端用戶之间建立一种环境,而終端用戶则是基于这个軟體所建立的环境来操作软件。.

新!!: 字节码和虛擬機器 · 查看更多 »

Java字节码

Java 字节码(Java bytecode)是Java虚拟机执行的一种指令格式。大多数操作码都是一个字节长,而有些操作需要参数,导致了有一些多字节的操作码。而且并不是所有可能的256个操作码都被使用;其中有51个操作码被保留做将来使用。除此之外,原始Java平台开发商,升阳微系统,额外保留了3个代码永久不使用。.

新!!: 字节码和Java字节码 · 查看更多 »

WebAssembly

WebAssembly或稱wasm是一個實驗性的低階程式語言,應用於瀏覽器內的客戶端。WebAssembly是可攜式的抽象語法樹,被設計來提供比JavaScript更快速的編譯及執行。WebAssembly將讓開發者能運用自己熟悉的程式語言(最初以C/C++作為實作目標)編譯,再藉虛擬機器引擎在瀏覽器內執行。WebAssembly的開發團隊分別來自Mozilla、Google、Microsoft、Apple,代表著四大網路瀏覽器Firefox、Chrome、Microsoft Edge、Safari。2017年11月,所有以上四個瀏覽器都開始實驗性的支援WebAssembly。.

新!!: 字节码和WebAssembly · 查看更多 »

源代码

源代码(Source code),也称源程序,是指一系列人类可读的计算机语言指令。 在现代程序语言中,源代码可以是以书籍或者磁带的形式出现;但最常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。.

新!!: 字节码和源代码 · 查看更多 »

机器语言

机器语言(machine language)是一種指令集的體--。这种指令集称为機器碼(machine code),是電腦的CPU可直接解讀的資料。 機器碼有時也被稱為原生碼(Native Code),這個名詞比較強調某種程式語言或函式庫與執行平台相關的部份。.

新!!: 字节码和机器语言 · 查看更多 »

重定向到这里:

Bytecode

传出传入
嘿!我们在Facebook上吧! »