IMX6ULL裸机开发中的C语言算术运行时辅助函数(三)—— 64位除法与乘法
在前两篇文章中,我们详细分析了ARM平台上的64位移位运算(ashldi3.S、ashrdi3.S、lshrdi3.S)和32位除法取模运算(lib1funcs.S)的软件实现。本文将继续探索U-Boot ARM运行时辅助算术库的64位除法与64位乘法。
64位除法是整个运行时库中最复杂的算法之一,它不仅涉及复杂的数学原理,还需要精妙的工程优化来确保性能。而64位乘法虽然概念上相对简单,但在32位处理器上实现时也需要巧妙地处理进位传递和部分积累加。
本文将详细分析U-Boot中以下关键文件:
div64.S—— 64位÷32位的特化除法uldivmod.S—— 64位÷64位的通用除法(无符号)
此文章需要验证后才能阅读全文
文章作者
STUDYWITHIOT
版权声明
本博客所有文章除特别声明外,均采用
CC BY-NC-SA 4.0
许可协议。转载请注明来自:
STUDYWITHIOT !
请作者喝杯茶吧~