I am pretty confident I have the ALU completed properly. However, I don't understand where the ZR & NG come in nor do I understand their purpose. What is eq. comparison and neg. comparison and where were they explained? Any help would be greatly appreciated.
The zr and ng outputs from the ALU are used when you implement your CPU in chapter 5. They are used for instructions with conditional jumps, for instance the instruction D;JEQ jumps only if the D register contains zero. You'll learn about these instructions in chapter 4.
For chapter 2 it suffices that the zr flag is TRUE when the output of the ALU is zero and that the ng flag if TRUE when the output of the ALU is a negative number.