The aim of the thesis was to write a program which translates C programming language to an assembly language and runs as a website in every browser without the need to install any additional program installation. The website also features a simulation of the program and assembly code and displays the current memory state of the target system. It also enables changes to the input signals during the simulation.
The compiler is written entirely in programming languages JavaScript, HTML and CSS. Due to the structure of the target system, the capability of the compiler is limited to its basic functions.
Introduction presents the capabilities and limitations of the compiler, and differences from the existing compilers. A more detailed description of the compiler's performance follows; from lexical analysis, through code preprocessing and syntactic analysis, to the output code generation. User interface and working with the simulator are then described in detail. The last part contains descriptions of certain functions, added to allow debugging and searching for possible errors of the compiler.
The compiler will ease the work of students when they program and test the 12-bit microcontroller, which they make themselves in the FPGA circuit as a Digital Electronic Systems Design laboratory assignment.
|