The objective of this diploma thesis is to build a simple computer, which will enable the use of the Jack object-oriented programming language, by following instructions from the book The Elements of Computing Systems [1]. This programming language has been designed as a part of the implementation of the computer. While building the computer, the following topics are encountered: hardware, architecture, data structures, algorithms, programming languages, compilers, operating systems and software development. Each of these topics covers a very broad area of computer science, which often poses a problem when trying to understand how a computer works as a whole. The book [1] plays a role in this by briey presenting each of the topics and by providing insight into what goes on in the computer through various tasks, ranging from translating a high-level programming language into machine code to designing the hardware on which it can run.
|