I 필터에 대한 다음과 같은 코드가 있습니다이 방법이 가장 적합합니까?
// Shift array to the left
memmove(&Fifo[0], &Fifo[1], 12 * 4);
// Add new value
Fifo[12] = NewValue;
int Result = Factor[0] * Fifo[6];
Result += Factor[1] * (Fifo[5] + Fifo[7]);
Result += Factor[2] * (Fifo[4] + Fifo[8]);
Result += Factor[3] * (Fifo[3] + Fifo[9]);
Result += Factor[4] * (Fifo[2] + Fifo[10]);
Result += Factor[5] * (Fifo[1] + Fifo[11]);
Result += Factor[6] * (Fifo[0] + Fifo[12]);
내가 너무 많은 메모리를 호출 할 때마다, 성능을 향상시킬를 복사 할 필요 없다 그래서 나는이를 다시 작성할 수있는 방법이 있나요를? 순환 버퍼 및 링크 목록에 대해 생각했지만 위의 옵션이 가장 좋은 것으로 보이는 코드와 복잡성이 많이 필요합니다.
원형 버퍼가 여기에 있습니다. 16과 같이 2 요소의 힘을줍니다. 따라서 인덱스를 증가시킬 때 인덱스를 래핑하는 것은 간단한 AND로 간단합니다. –