8-bit clean
# 8-bit clean

8-bit clean heißt ein System, das alle 8 Bits eines Bytes korrekt berücksichtigt und verarbeitet.

Frühe Codepages wie ASCII codieren die Zeichen über 7 Bit, während das achte Bit für Paritätsprüfungen oder andere Zwecke verwendet werden kann.

Spätere Codepages wie CP437 oder CP850, sowie die ISO-8859-Reihe und UTF-8 bauen auf ASCII auf. Durch Setzen des achten Bits auf 0 konvertiert man ein ASCII-Zeichen in jede dieser Codepages, während die 1 zu einem Zeichen mit anderer Bedeutung führt (Umlaut, grafisches Symbol, Teil einer Multibyte-Sequenz usw.).

Umgekehrt müssen Texte, die in Codepages geschrieben sind, bei denen das achte Bit definiert ist, sowie binäre Daten, vor der Verarbeitung durch ein 7-Bit-System zunächst konvertiert werden. Andernfalls würden Sonderzeichen, bei denen das achte Bit gesetzt ist, falsch interpretiert und Binärdaten verfälscht. Diese Vorgehensweise ist bei Mailsystemen gebräuchlich (SMTP, MIME, uuencode).

Es ist üblich geworden, bei ASCII-codierten Daten das achte Bit von vornherein auf Null zu setzen, d. h. darauf zu achten, dass die Daten 8-bit clean sind. Eine explizite Konvertierung in die genannten Codepages wird damit überflüssig. Der Verlust an Paritätsinformationen erscheint heute unkritisch, weil fehleranfällige Datenübertragungen inzwischen über Paket-Prüfsummen abgesichert werden.

Seit den 1990er Jahren sind gängige Anwendungen und Betriebssysteme 8-bit clean, während SMTP aus Gründen der Abwärtskompatibilität weiterhin 7-Bit-Daten verarbeitet.

