Давно же здесь что то обсасывали, там в интах на С примерно так:
y(n) = x(n) + y(n-1) << K. А выходная разрядность и
степень фильтрации полностью от К зависит. На С в 2 строчки, чтобы
переполнения избежать: y(n) = y(n) << K; y(n+1) = y(n) +
x(n); Это для положительных отсчетов, в знаковые потом
преобразовать можно.