Understanding Address decoder
You are getting confused by Address 0. It helps if you use address state tables.

En_A goes high under the following condition.



That is it goes high from address C000 - FFFF for an address range of 16K.

Therefore En_B has this truth table. Note you copy EN_A state from above first then add the new address bit states.



I am sure you can take it from there.

Update:

The above is short form, you might understand better if you chart the complete truth tables, as so.