image/svg+xml ProcessOpA clearOpA opA 1 0 Mask opB carryBorrowIn clearOpB invertOpB maskOpB clearCarryIn invertCarryIn opAProcessed opBProcessed carryInProcessed ProcessOpB ProcessCarryIn flags.carryBorrow invertCarryOut ProcessCarryOut RollUnit LogicUnit MathsUnit RollOut LogicOut MathsOut dOut 0 1 bypassCarry ALU carryOut carryOutProcessed OverflowUnit opAProcessed(15) opBProcessed(15) MathsOut(15) flags.overflow flags.negative =0 flags.zero 0 1 bypassOverflow overflowIn ProcessOverflow overflowOut overflowProcessed result