|
|
Lab (Praktikum) - Operating Systems PrinciplesIntroductionIn our lab, an imaginary computer (HAL) will be used to experiment with elementary principles of computers and operating systems. We will implement an interpreter/emulator for the HAL computer and extend its features continuously throughout the semester. An Instruction Set Architecture (ISA) defines how instructions are interpreted by a processor. The term "architecture" refers to the logical structure of the system that must be implemented in order for the instruction set to perform computations. This logical structure usually comprises memory, registers and their interactions with a central processing unit. The ISA tends to form the interface between computer hardware and software. The architecture is usually implemented in hardware using electrical circuitry with many transistors to obtain a system that is able to perform logical operations. Computer scientists create software programs known as compilers that are able to translate code in high level languages into sequences of instructions. For our purpose the ISA layer should be implemented in software.
The HAL architecture consists of:
The instruction set is defined as followed. An instruction consists of 2 parts:
A HAL program is thereby a sequence of instructions, which are sequentially stored in the memory (one memory cell for each instruction). The following table describes the instruction set supported by HAL:
A HAL program is always executed sequentially. Example:Add two numbers (from I/O channel 1) and print the result (on I/O channel 2): |
|