A chip uses its own low address bits internally. Every bit above those decides whether the chip is selected. Full address decoding checks all of them.
Recipe for a chip select:
- The chip's size gives its own bits: an 8K chip uses A12–A0.
- In a 16-bit system, A15–A13 remain. Write the block's start address in binary to find their pattern.
- AND all those bits, primed where the pattern has a 0.
For an 8K chip at 4000₁₆–5FFF₁₆: A15 A14 A13 = 010, so CS = .
Partial decoding uses only some of the high bits. It saves gates, but the ignored bits no longer matter, so the chip answers at several addresses. Each copy is called an alias or mirror. If an 8K ROM at E000₁₆ is selected by alone, A13 is ignored and the ROM also appears at C000₁₆–DFFF₁₆.
Partial decoding is acceptable in a small system if nothing else needs the mirrored addresses. If another device does, both answer at once, and that's bus contention.