Are the addresses physical outputs or are they internal bits? What PLC are we pretending to use?
I'm not 100% certain if these questions matter for other PLC models, but I'm pretty much exclusively trained on Allen Bradley. Outputs only update at the end of each scan (not including special instructions). Bits update "real time" so to speak.
So as you go through, each address will update as you read left to right, top to bottom.
Like in the case of A = 1. You see XIO B is true, because B hasn't turned on yet. C turns on. Then the next output branch, B turns on. So B and C are currently on. Then the next rung, C is on, D is off, so D turns on. End of scan 1, B, C, and D, are all on.
Second scan, XIC A is true, but B is on so XIO B is false, so C turns off. B is on, C is off, and D remains on, because XIO C is true and XIC D is true.
Then continue in a similar manner.