3-bit binary counter using LEDs

Why not write the for loop to reflect what you really want:

for( int i = 0; i < 8; i++ ) {
    signal( led2, i >> 2 );
    signal( led1, (i >> 1) & 1 );
    signal( led0, i & 1 );
    delay(2000);
}