a) Arithmetic and Logic Unit purpose of Registers (Program Counter(PC), Accumulator (ACC), Memory Address Register (MAR), Memory Data Register (MDR), Current Instruction Register, Buses, Data Address and Control, How this relates to Assembly language programs.