Um die Frage direkt zu beantworten: In C könnte man den gesamten Adressraum wie folgt auslesen:
unsigned char *p = (unsigned char *)0; // Bei Adresse 0 anfangen.
do {
unsigned char b = *p; // Byte Auslesen
// Hier byte verarbeiten
p++; // Zur nächsten Adresse gehen
} while (p != 0); // Wenn wir wieder am Anfang sind, sind wir fertig.
Falls dir diese Antwort komisch vorkommt, liegt das daran, dass ich immer noch nicht weiß, was du vorhast.