Answer from cs61c-ec (Osbert Orr 16671538) for Question 4 The results might be undefined because the two instructions after begin are happening at the same time. Both of the instructions if run at the same time have s as 0 but the return value for expected is both 0 and 1. In some cases you might get expected as 1 when s = 0 and a = 0 and in some cases you might get expected as 0 when s = 0 a = 1.