常見指令集armeabi、armeabi-v7a、mips、x86簡析

ABI:指應用基於哪種指令集來進行編譯,ABI總共有四種,分別是armeabi、armeabi-v7a、mips、x86,它們都是表示cpu的類型。
armeabi
默認選項,
支持基於 ARM* v5TE 的設備
支持軟浮點運算(不支持硬件輔助的浮點計算)
支持所有 ARM* 設備

armeabi-v7a
支持基於 ARM* v7 的設備
支持硬件 FPU 指令
支持硬件浮點運算

x86
支持基於硬件的浮點運算的 IA-32 指令集

mips
支持二進制接口既然armeabi通用,爲什麼要使用其它指令集呢?
答:雖然armeabi通用性強,但速度慢,而v7a能充分發揮v7a CPU的能力。armeabi就是針對普通的或舊的armcpu,armeabi-v7a是針對有浮點運算或高級擴展功能的arm cpu。x86、mips同理。

擴展知識EABI(嵌入式應用二進制接口)
Embedded application binary interface, 即嵌入式應用二進制接口,是描述可連接目標代碼,庫目標代碼,可執行文件影像,如何連接,執行和調試,以及目標代碼生成過程,和c, c++語言接口的規範,是編譯連接工具的基礎規範,也是研究它們工作原理的基礎,可惜arm的EABI迄今爲止沒有完全訂好。作爲EABI的組成部分有過程調用規範,可執行文件格式規範,c/c++ ABI規範和調試格式規範。EABI ,說的是這樣的一種新的系統調用方式NEON
一種由 ARM 開發的 64/128 位混合 SIMD 體系結構,可以提升多媒體和信號處理應用程序的性能。 NEON 作爲處理器的一部分來實現,但是它擁有自己的執行管道,以及有別於 ARM 的寄存器組。 關鍵功能包括對齊和未對齊數據訪問,支持整型定點和單精度浮點數據類型、與 ARM 核心的緊密耦合,以及具有多個視圖的大型寄存器文件。SSE
向英特爾架構(IA)的SIMD 流指令擴展(英特爾推出的類似 NEON 的工具)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章