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.