In this paper, we present a method to help teach computer architecture (or computer organization) by developing an in class system where the students, themselves, compile high-level code and simulate the execution of their compiled programs. We call this simulation framework Our Realistic Computer Simulation (ORCs), and in this paper, we will describe how this framework is developed throughout a semester to help students understand the increasing complexity of a computer architecture. At the end of the course, the ORCS framework can be used by students to test out their own optimizations, and the simulation helps them determine if these optimizations improve the execution of a program on their machines.