def suba2(machine, r, adr, x): v = get_value_at_effective_address(machine, adr, x) result = l2a(machine.GR[r]) - l2a(v) machine.GR[r] = a2l(result) return flags(result)