banner
yono

yono

哈喽~欢迎光临
follow
github

DSP の sizeof()

ついにリーダーの小さな尾を捕まえました。DSP のアーキテクチャは ARM とは異なり、DSP のバイト (byte) は 16 ビットです。これにより、構造体に関連するアライメントの状況や sizeof () の結果が異なります。

また、memset () や memcpy () といった標準ライブラリ関数に対しては断固反対し、手動でループを使ってバルク操作を行うことを主張しています。コストを削減するために、ソフトウェアを ARM チッププラットフォームに移植する際に問題が発生します。この問題は、AC6 コンパイラでは発生しませんが (Os)、GCC の最適化時に現れます。

もし素直に sizeof () や memset () といった標準ライブラリの組み合わせを使用すれば、このような問題は発生しません。なぜなら、彼らはすべてバイト (byte) を基準単位としているからです。会社の奴隷としてのプロジェクトでは要求があっても効果はありませんが、私自身のオープンソースライブラリでは非常に慎重に使用しています。実際、これによりソフトウェアライブラリの互換性が向上します。

この記事は Mix Space によって xLog に同期更新されました。原始リンクは https://www.yono233.cn/notes/26

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。