When doing ACSR |=(1<<ACD)|(1<<ACBG) are the rest of the bits assumed to be 0?

You are setting those two bits and leaving the others unchanged. If you want to set those two and clear the rest:
ACSR = (1<<ACD) | (1<<ACBG);

Note: In the Analog Compare Status Register, Bit 5 (ACO) is read-only. It doesn't matter what you try to write to it.

Note: In the Analog Compare Status Register, Bit 4 (ACI) is an interrupt flag. It gets CLEARED if you write a 1 to it.