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.