Grundlegende Konzepte
Ein Computer hat eine sogenannte von-Neumann-Architektur, d.h. dass Programme und Daten nicht separat sondern nebeneinander in einem Speicher mit linearem Adressraum, dem Hauptspeicher oder RAM, liegen. Im Gegensatz dazu gibt es bei der Harvardarchitektur zwei getrennte Speicherbereiche.
Beim Laden und Ausführen eines Programms wird ein entsprechend grosser zusammenhängender Speicherbereich bereitgestellt und der ausführbare Maschinencode des Programms dort abgespeichert.
Maschinencode ist unleserlich für einen Softwareentwickler. Daher erstellt man Quellcode in einer höheren Programmiersprache als Maschinensprache. Dieser Quellcode wird mit einem sogenannten Compiler in Maschinencode umgewandelt.