Answer from cs61c-ev (Roland Carlos 16583196) for Question 1 With instruction set regularity and simplicity, the hardware can run a variety of different cases at the best speed possible. While you can make hardware that does many functions and implement each function in its own way, you'll end up with a larger than necessary piece of hardware that may run slow just because of the distance that signals will have to run through it. If you keep things simple and use the same pieces over and over (but for different purposes) you can have small pieces of hardware that will run considerably faster.