导航:首页 > 编程知识 > 编程接口不同有什么区别

编程接口不同有什么区别

发布时间:2025-01-08 14:05:10

1. 应用程序编程接口(API)与应用程序二进制接口(ABI)有什么区别

为了方便能看明白,我用使用比较广泛的C语言和X86架构去举例
API:程序员编程时用到的库函数像C的stdio.h中的printf()函数。api可以大大提高程序的开发效率,缩短源码。你在编程时直接引入库文件#include<stdio.h>调用printf()即可。不用再自己写printf()函数的具体实现代码

ABI:是一个规则或者说标准吧,他规定了数据类型,存放方式,函数/方法(参数,返回值,返回地址,变量的存放位置和格式)等等,例如X86的函数参数存放在DI,SI,DX,CX几个寄存器中,返回值存放在AX中,小端格式存放等等。作用是为了方便同一平台不同系统的软件移植吧。

我自己觉得这个ABI可以把它纳入ISA 指令集架构的范畴了(这个只是我为了方便题主你理解啊,ISA的定义并不包含ABI哈~)。。因为同一个ISA的ABI都相同。。。

我尝试举个通俗点的例子,api有点“前人栽树后人乘凉”的味道(编译器制作初期编写函数,开发者使用时直接调用函数名)。ABI就像是前人留下来的一些定理(你必须按照这定理去做,不然将会有大麻烦)。

~~~~~~~~~~~~~~~~~有问题可以继续提问,

阅读全文

与编程接口不同有什么区别相关的资料

热点内容
word2010没有工具栏 浏览:116
小米平板和电脑之间怎么传输文件 浏览:265
微信更换手机绑定 浏览:819
什么觅网站 浏览:771
苹果5s手机找不到描述文件 浏览:84
mac无法打开文件夹 浏览:921
苹果表实用性 浏览:642
cad第三方软件用什么编程 浏览:701
哪个网站买雪茄好 浏览:5
音轨文件名称有哪些 浏览:219
什么手机app可以精确截屏 浏览:173
风投企业看中哪些数据 浏览:671
数据流和控制流有什么不一样 浏览:393
htvvive教程视频 浏览:983
有哪些免费看哪个网站 浏览:934
cad怎么打开前一天的文件 浏览:764
java包改名无法发布 浏览:200
影音先锋历史版本 浏览:656
唱mp3提取工具 浏览:980
苹果数据分析cpu过热重启怎么解决 浏览:673

友情链接