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

名字修饰和应用二进制接口

快捷方式: 差异相似杰卡德相似系数参考

名字修饰和应用二进制接口之间的区别

名字修饰 vs. 应用二进制接口

名字修饰,又译作名字粉碎、名字重整,译自英文name mangling或name decoration,是现代计算机程序设计语言的编译器用于解决由于程序实体的名字必须唯一而导致的问题的一种技术。 它提供了在函数、结构体、类或其它的数据类型的名字中编码附加信息一种方法,用于从编译器中向链接器传递更多语义信息。 该需求产生于程序设计语言允许不同的条目使用相同的标识符,包括它们占据不同的命名空间(典型的命名空间是由一个模块、一个类或显式的namespace指示来定义的)或者有不同的签名(例如函数重载)。 任何由编译器产生的目标代码通常与另一部分的目标代码(产生于同一款或不同款的编译器)通过链接器把它们链接起来。链接器需要一大堆每个程序实体信息。例如正确链接一个函数需要它的名字、参数个数和它们的类型,等等。. 在軟體開發中,應用程式機器二元碼界面(application binary interface,縮寫為 ABI)是指兩程式模組間的界面;通常其中一個程式模組會是函式庫或作業系統所提供的服務,而另一邊的模組則是使用者所執行的程式。一個ABI定義了機器碼如何存取資料結構與運算程序,此處所定義的界面相當低階並且相依於硬體。而類似概念的''API''則在原始碼定義這些,則較為高階,並不直接相依於硬體,通常會是人類可閱讀的程式碼。一個ABI常見的樣貌即是調用約定(calling convention):資料怎麼成為計算程序的輸入或者從中得到輸出;x86的調用約定(X86调用约定)即是一個ABI的例子。決定要不要採取既定的ABI(不論是否由官方提供),通常由編譯器,作業系統或函式庫的開發者來決定;然而,如果撰寫一個混和多個程式語言的應用程式,就必須直接處理ABI,採用外部函式呼叫(Foreign function interface)來達成此目的。.

之间名字修饰和应用二进制接口相似

名字修饰和应用二进制接口有(在联盟百科)4共同点: 应用程序接口編譯器目标代码调用约定

应用程序接口

应用程序接口(Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。由於近年來软件的规模日益庞大,常常需要把复杂的系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。.

名字修饰和应用程序接口 · 应用二进制接口和应用程序接口 · 查看更多 »

編譯器

编译器(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), 最後打包好的檔案就可以給電腦去判讀執行了。.

名字修饰和編譯器 · 应用二进制接口和編譯器 · 查看更多 »

目标代码

标代码(object code)指计算机科学中编译器或汇编器处理源代码后所生成的代码,它一般由机器代码或接近于机器语言的代码组成。目标文件(object file)即存放目标代码的计算机文件,它常被称作二进制文件(binaries)。 目标文件包含着机器代码(可直接被计算机中央处理器执行)以及代码在运行时使用的数据,如重定位信息,如用于链接或调试的程序符号(变量和函数的名字),此外还包括其他调试信息。目标文件是从源代码文件产生程序文件这一过程的中间产物,链接器正是通过把目标文件链接在一起来生成可执行文件或库文件。目标文件中唯一的要素是机器代码,例如,用于嵌入式系统的目标文件可能仅仅含有机器代码。.

名字修饰和目标代码 · 应用二进制接口和目标代码 · 查看更多 »

调用约定

在计算机科学中, 调用约定是一种定义子过程从调用处接受参数以及返回结果的方法的约定。不同调用约定的区别在于:.

名字修饰和调用约定 · 应用二进制接口和调用约定 · 查看更多 »

上面的列表回答下列问题

名字修饰和应用二进制接口之间的比较

名字修饰有41个关系,而应用二进制接口有16个。由于它们的共同之处4,杰卡德指数为7.02% = 4 / (41 + 16)。

参考

本文介绍名字修饰和应用二进制接口之间的关系。要访问该信息提取每篇文章,请访问:

嘿!我们在Facebook上吧! »