# Confused why outputs of a priority encoder could be X instead of 0 or 1

So this is the truth table given for the Priority Encoder: and this is its logic diagram:
I am extremely confused with the part where the outputs x and y are labeled as X (where D0 D1 D2 D3 are all zero). First of all, how could an output be a "don't care" term? What that would mean is that when D0 D1 D2 D3 are all zero, x and y are either 1 or 0. But that does not make sense at all. How could an output have an indefinite value when we have definite inputs?

As you can see from the diagram, x = D2 + D3 and y = D3 + D1D2'. So if you put zeros to all inputs it is clear that x and y should be 0. Then why is it shown as X in the truth table?

• I think they mean that if V is false, nothing is sopposed to care about the vales of x and y. Ie. the inputs of whatever that the outputs connect to need to have "don't care" in their truth tables. – Oskar Skog Oct 23 '18 at 4:16
• it is not undefined ... it is don't care ..... the truth table came before the circuit .... the designer of the truth table decided that those values are irrelevant – jsotola Oct 24 '18 at 6:31