请详细解释一下算术逻辑单元和控制单元的协作原理，并以无序列表形式详细描述它们的功能。
user
- 算术逻辑单元（ALU）功能:
  1. 实现基本算术运算（加减乘除）和逻辑运算（与、或、非、异或等）。
  2. 对输入数据进行处理，生成运算结果和相关的状态标志（如进位、零、溢出等）。
  3. 将结果和状态提供给其他部件使用，传递给寄存器或存储器。

- 控制单元（CU）功能:
  1. 提取和解释指令，确定执行的操作类型和操作数。
  2. 生成控制信号，协调各部件的工作，确保指令的正确执行。
  3. 管理指令的执行顺序，控制取指、译码、执行和写回等阶段。

协作原理:
1. CU 控制指令的执行流程，指令类型确定后，CU 产生的控制信号指导 ALU 执行具体操作。
2. CU 提供的地址信息，ALU 通过总线从存储器或寄存器中获取操作数。
3. ALU 执行计算后，结果传递给 CU，CU 决定存储位置，将结果写回目标寄存器或存储器。
4. 两者通过共享的控制信号和数据总线协同工作，CU 提供指令和控制信号，ALU 执行具体操作并反馈结果。

通过这种紧密配合，CPU 能够高效、准确地执行各种指令和运算操作。
assistant