¿Hay alguna alternativa al uso de% (módulo) en C / C ++?

Una vez leí en alguna parte que el operador de módulo es ineficiente en pequeños dispositivos integrados como microcontroladores de 8 bits que no tienen instrucción de división entera. Quizás alguien pueda confirmar esto, pero pensé que la diferencia es 5-10 veces más lenta que con una operación de división de enteros.

¿Hay otra manera de hacer esto que no sea mantener un contador variable, ey desbordar manualmente a 0 en el punto de modificación?

const int FIZZ = 6;
for(int x = 0; x < MAXCOUNT; x++)
{
    if(!(x % FIZZ)) print("Fizz\n"); // slow on some systems
}

vs:

La forma en que lo estoy haciendo actualmente:

const int FIZZ = 6;
int fizzcount = 1;
for(int x = 1; x < MAXCOUNT; x++)
{
    if(fizzcount >= FIZZ) 
    {
        print("Fizz\n");
        fizzcount = 0;
    }
}

Respuestas a la pregunta(13)

Su respuesta a la pregunta