The datapath allowing for both R and I-type instructions is a rather complex datapath.
In this exercise, we will learn about its various components.