Answers
Stores the address of the current instruction being ran
Stores frequently ran instructions
Carries out Arithmetic and Logical operations
Stores the results of calculations in the ALU
Controls the flow of data inside the CPU
Stores data that has been fetched from memory
Stores the address of the next instruction to be ran