Chapter 1 describes what computer organization is all about, and introduces the elements we will learn through the rest of this book.
Chapter 2 describes number systems and bases, and in particular, binary. Since computer systems use a Boolean (on/off) system, binary is the obvious choice.
Chapter 3 starts looking at the instructions to the CPU. This chapter covers how assembly instructions are assembled into machine code and vice-versa.
Chapter 4 looks at the digital components that make up a CPU. This chapter covers combinational and sequential logic.
Chapter 5 finally puts all of the previous chapters together. This chapter shows how the digital logic components and instructions are routed to perform an action.
Appendix A shows a series of common RISC-V programs both in C++ and assembly.
Appendix B gets more complicated and shows more advanced RISC-V programs both in C++ and assembly.
Appendix C has some tips and tricks to writing your own RISC-V assembly programs.
Errors or changes? Stephen Marz (email@example.com)
This e-book is meant as a set of lecture notes in conjunction with the course textbook.