12.07.2015 Views

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

コーディング 慣 行5.1.4 ループの 最 適 化ループは、 大 半 のプ ロ グ ラ ムに 含 まれてい る 一 般 的 な 構 文 の 1 つです。 ループの 実 行 には 多 大 な 時 間 が 費 やされる こ と が 多 いので、 時 間 制 限 の 厳 しいループに 注 意 を 払 う こ と をお 勧 めし ます。ループ 終 了ループ 終 了 条 件 は、 多 大 なオーバーヘ ッ ド の 原 因 と な り かねないので、 その作 成 にあたっては 注 意 が 必 要 です。 可 能 な 限 り 以 下 を 実 践 し て 下 さ い。• ゼ ロ までカ ウ ン ト ダ ウ ンするループを 常 に 作 成 し、 単 純 な 終 了 条 件 を 使用 します。• unsigned int 型 のカウンタを 常 に 使 用 し、 ゼロ と 等 し くないかど うかをテス ト します。表 5-1 に、 n! を 計 算 するルーチンの 実 装 例 を 2 つ 示 し ます。 こ れ ら の 例 は 共に、 ループ 終 了 のオーバーヘッ ド を 示 し ています。 最 初 の 実 装 では、 イ ン クリメントループを 使 用 して n! が 計 算 されるのに 対 し、 2 番 目 の 実 装 では、 デクリメントループを 使 用 して n! が 計 算 されます。表 5-1 インクリメントループとデクリメントループを 表 す C コードインクリメントループint fact1(int n){int i, fact = 1;for (i = 1; i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!