For the ALU, we need some more components: (1) a register block (group of registers) in which to store operands and results, and (2) the ALU itself, which is primarily combinational logic. Since the ALU is largely an adder plus other logic, we use the adder symbol.
Fig.3.3 ALU Components
In the MIPS CPU, for examle, all arguments used in processing are stored in registers.
This requires two buses to route data to the ALU.
All registers are tied to both output buses.
A single input bus carries results back to all registers.