導航:首頁 > 編程知識 > 編程介面不同有什麼區別

編程介面不同有什麼區別

發布時間: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就像是前人留下來的一些定理(你必須按照這定理去做,不然將會有大麻煩)。

~~~~~~~~~~~~~~~~~有問題可以繼續提問,

閱讀全文

與編程介面不同有什麼區別相關的資料

熱點內容
編程貓克隆體是什麼意思 瀏覽:621
什麼是牌神特編程 瀏覽:557
微信求助平台 瀏覽:99
幹部網路學院如何學 瀏覽:214
買瑞士機械表鋼殼進什麼網站 瀏覽:583
iphone5s拍照全屏 瀏覽:897
linux配置classpath 瀏覽:400
高水平的編程人員一般用什麼電腦 瀏覽:428
電腦壓縮文件找不到怎麼回事 瀏覽:870
c語言程序設計實驗報告順序結構 瀏覽:798
微信什麼版本適合安卓236 瀏覽:41
瑞風s5車載導航找不到相關文件 瀏覽:709
冬瓜影視app哪個最靠譜 瀏覽:159
移動數據流量無法用怎麼辦 瀏覽:420
u盤聽歌找不到多媒體文件 瀏覽:383
win10經常無網路連接不上 瀏覽:471
iphone5se翻新機鑒別 瀏覽:124
ai畫冊教程 瀏覽:32
js數字校驗銀行卡號 瀏覽:419
質量工作總結需要哪些數據 瀏覽:206

友情鏈接