久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于Android的ARM匯編語言系列之六:NEON指令集與VFP指令集

基于Android的ARM匯編語言系列之六:NEON指令集與VFP指令集

作者: 時間:2016-11-09 來源:網(wǎng)絡 收藏
章節(jié)列表

之一:ARM匯編語言開篇
之二:C/C++程序生成ARM匯編程序的過程分析
之三:ARM匯編語言程序結構
之四:ARM處理器的尋址方式
之五:ARM指令集與Thumb指令集
之六:NEON指令集與VFP指令集

本文引用地址:http://cqxgywz.com/article/201611/317692.htm

NEON指令集與VFP指令集是ARM指令集的擴展,多用于多媒體編程和浮點運算。

Android平臺使用NEON指令集與VFP指令集

Android NDK從r3版本開始也添加了對NEON指令集與VFP指令集的支持。使用方法如下所示:

1 運行時檢測處理器是否支持NEON指令集與VFP指令集

Android NDK提供了一個cpufeatures的庫來讓開發(fā)者在運行時檢測處理器是否支持NEON指令集與VFP指令集。要使用cpufeatures庫,

(1) 首先在Android.mk中添加以下內(nèi)容:

$(call import-module, android/cpufeatures)

(2) 然后在C/C++代碼中包含頭文件cpu-features.h文件。該文件包含以下函數(shù)。

  • android_getCpuFamily():獲取處理器家族信息,對于ARM處理器,該函數(shù)始終返回常量值ANDROID_CPU_FAMILY_ARM。
  • android_getCpuFeatures():檢測處理器支持的指令集,如果支持NEON指令集,則返回的64位數(shù)據(jù)中ANDROID_CPU_ARM_FEATURE_NEON標志就會被置位。如果支持VFPv3指令集,則返回的64位數(shù)據(jù)中ANDROID_CPU_ARM_FEATURE_VFPv3標志就會被置位。
  • android_getCpuCount():獲取處理器的核心數(shù)。

z只需要在Android.mk添加一下內(nèi)容即可使用。

TARGET_ARCH_ABI:=armeabi-v7aLOCAL_ARM_:=true



評論


技術專區(qū)

關閉