Der Extended Binary Coded Decimal Interchange Code (EBCDIC, sinngemäß „erweiterter Austauschcode für binär kodierte Dezimalziffern“) ist eine von IBM entwickelte 8-Bit-Zeichenkodierung, bei der jedoch nicht alle Codewörter verwendet werden. Der EBCDIC ist aus dem älteren Binary Coded Decimal Interchange Code (BCDIC) entstanden, der wiederum auf dem 4-Bit-Code BCD (Binary Coded Decimal) basiert.

EBCDIC wird fast ausschließlich auf Großrechnern verwendet. Trotz seines Alters wird die Kodierung auch noch in heutigen Systemen genutzt, beispielsweise im 2001 veröffentlichten z/OS. Die EBCDIC-Codepage gibt es in diversen Varianten mit und ohne Eurozeichen. Erkennbar ist der historische Zusammenhang mit der 80-Zeichen-Lochkartenkodierung von IBM, bei der die Buchstaben A–I, J–R und S–Z die Positionen 1 bis 9 bzw. 2 bis 9 in der numerischen Zone benutzen. Eine Konsequenz daraus ist, dass – im Gegensatz zum ASCII-Zeichensatz – die Buchstaben A–Z nicht lückenlos aufeinander folgen, was die alphabetische Sortierung komplizierter macht.

Ähnlich wie das Unicode Transformation Format UTF-8 eine Kodierung von Unicode unter Beibehaltung der Kodierung des ASCII-Zeichensatzes darstellt, gibt es eine Unicode-Kodierung, die auf EBCDIC aufbaut. Dieses Format heißt UTF-EBCDIC.

Übersicht: EBCDIC-Codepages mit Latin-1-Zeichensatz

Übersicht: EBCDIC-Codepages mit Latin-1-Zeichensatz
CodepageCodepage
mit €-Zeichen
Länder
0371140Australien, Brasilien, Kanada, Neuseeland, Portugal, Südafrika, USA
2731141Deutschland, Österreich
2771142Dänemark, Norwegen
2781143Finnland, Schweden
2801144Italien
2841145Lateinamerika, Spanien
2851146Großbritannien und Nordirland, Irland
2971147Frankreich
5001148Belgien, Kanada, Schweiz, International
8711149Island
1047Offene Systeme (MVS C-Compiler)
EDF03DRVDeutschland (BS2000/OSD)

EBCDIC 037

EBCDIC 037 ist eine Variante des EBCDIC-Codes. Er wird (praktisch ausschließlich auf IBM-Großrechnern) zur Darstellung des Zeichensatzes der englischen und portugiesischen Sprachen verwendet.

Codepage 037
Australien, Brasilien, Kanada, Neuseeland, Portugal, Südafrika, USA
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… âäàáãå çñ¢.<(+| 4… (4hex = 0100bin)
5… &éêëèíîï ìß !$*) ;¬ 5… (5hex = 0101bin)
6… -/ÂÄÀÁÃÅ ÇѦ, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#@'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ¤ 9… (9hex = 1001bin)
A… µ~stuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ^£¥·©§¼ ½¾[]¯¨´× B… (Bhex = 1011bin)
C… {ABCDEFG HIôöòóõ C… (Chex = 1100bin)
D… }JKLMNOP QR¹ûüùúÿ D… (Dhex = 1101bin)
E… \÷STUVWX YZ²ÔÖÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³ÛÜÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F

EBCDIC 273

EBCDIC 273 ist eine Variante des EBCDIC-Codes. Er wird zur Darstellung des Zeichensatzes der deutschen Sprache verwendet, praktisch ausschließlich auf IBM-Großrechnern.

Codepage 273
Deutschland, Österreich
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… â{àáãå çñÄ.<(+ ! 4… (4hex = 0100bin)
5… &éêëèíîï ì~Ü$*) ;^ 5… (5hex = 0101bin)
6… -/Â[ÀÁÃÅ ÇÑö, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#§'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ¤ 9… (9hex = 1001bin)
A… µßstuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ¢£¥·©@¼ ½¾¬|¯¨´× B… (Bhex = 1011bin)
C… äABCDEFG HIô¦òóõ C… (Chex = 1100bin)
D… üJKLMNOP QR¹û}ùúÿ D… (Dhex = 1101bin)
E… Ö÷STUVWX YZ²Ô\ÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³Û]ÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen
  • 41hex: geschütztes Leerzeichen
  • CAhex: weicher/kurzer Trennstrich
  • FFhex: Steuerzeichen (EBCDIC)

EBCDIC 500

EBCDIC 500 ist eine Variante des EBCDIC-Codes. Er wird zur Darstellung des internationalen Zeichensatzes verwendet, praktisch ausschließlich auf IBM-Großrechnern.

Codepage 500
Belgien, Kanada, Schweiz, International
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… âäàáãå çñ[.<(+ ! 4… (4hex = 0100bin)
5… &éêëèíîï ìß]$*) ;^ 5… (5hex = 0101bin)
6… -/ÂÄÀÁÃÅ ÇѦ, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#@'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ¤ 9… (9hex = 1001bin)
A… µ~stuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ¢£¥·©§¼ ½¾¬|¯¨´× B… (Bhex = 1011bin)
C… {ABCDEFG HIôöòóõ C… (Chex = 1100bin)
D… }JKLMNOP QR¹ûüùúÿ D… (Dhex = 1101bin)
E… \÷STUVWX YZ²ÔÖÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³ÛÜÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen
  • 41hex: geschütztes Leerzeichen
  • CAhex: weicher/kurzer Trennstrich
  • FFhex: Steuerzeichen (EBCDIC)

EBCDIC 1140

EBCDIC 1140 ist eine Variante des EBCDIC-Codes. Er wird (praktisch ausschließlich auf IBM-Großrechnern) zur Darstellung des Zeichensatzes der englischen und portugiesischen Sprachen verwendet. Sie entspricht der Codepage 037 und unterscheidet sich von ihr nur in der Position 9F, wo sich statt des internationalen Währungssymbols ¤ das Eurozeichen € befindet.

Codepage 1140
Australien, Brasilien, Kanada, Neuseeland, Portugal, Südafrika, USA
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… âäàáãå çñ¢.<(+| 4… (4hex = 0100bin)
5… &éêëèíîï ìß !$*) ;¬ 5… (5hex = 0101bin)
6… -/ÂÄÀÁÃÅ ÇѦ, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#@'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ 9… (9hex = 1001bin)
A… µ~stuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ^£¥·©§¼ ½¾[]¯¨´× B… (Bhex = 1011bin)
C… {ABCDEFG HIôöòóõ C… (Chex = 1100bin)
D… }JKLMNOP QR¹ûüùúÿ D… (Dhex = 1101bin)
E… \÷STUVWX YZ²ÔÖÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³ÛÜÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen
  • 41hex: geschütztes Leerzeichen
  • CAhex: weicher/kurzer Trennstrich
  • FFhex: Steuerzeichen (EBCDIC)

EBCDIC 1141

EBCDIC 1141 ist eine Variante des EBCDIC-Codes. Er wird zur Darstellung des Zeichensatzes der deutschen Sprache verwendet, praktisch ausschließlich auf IBM-Großrechnern. Sie entspricht der Codepage 273 und unterscheidet sich von ihr nur in der Position 9F, wo sich statt des internationalen Währungssymbols ¤ das Eurozeichen € befindet.

Codepage 1141
Deutschland, Österreich
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… â{àáãå çñÄ.<(+ ! 4… (4hex = 0100bin)
5… &éêëèíîï ì~Ü$*) ;^ 5… (5hex = 0101bin)
6… -/Â[ÀÁÃÅ ÇÑö, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#§'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ 9… (9hex = 1001bin)
A… µßstuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ¢£¥·©@¼ ½¾¬|¯¨´× B… (Bhex = 1011bin)
C… äABCDEFG HIô¦òóõ C… (Chex = 1100bin)
D… üJKLMNOP QR¹û}ùúÿ D… (Dhex = 1101bin)
E… Ö÷STUVWX YZ²Ô\ÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³Û]ÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen
  • 41hex: geschütztes Leerzeichen
  • CAhex: weicher/kurzer Trennstrich
  • FFhex: Steuerzeichen (EBCDIC)

EBCDIC 1148

EBCDIC 1148 ist eine Variante des EBCDIC-Codes. Er wird zur Darstellung des internationalen Zeichensatzes verwendet, praktisch ausschließlich auf IBM-Großrechnern. Sie entspricht der Codepage 500 und unterscheidet sich von ihr nur in der Position 9F, wo sich statt des internationalen Währungssymbols ¤ das Eurozeichen € befindet.

Codepage 1148
Belgien, Kanada, Schweiz, International
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… âäàáãå çñ[.<(+ ! 4… (4hex = 0100bin)
5… &éêëèíîï ìß]$*) ;^ 5… (5hex = 0101bin)
6… -/ÂÄÀÁÃÅ ÇѦ, %_> ? 6… (6hex = 0110bin)
7… øÉÊËÈÍÎÏ Ì` :#@'=" 7… (7hex = 0111bin)
8… Øabcdefg hi«  »ðýþ± 8… (8hex = 1000bin)
9… °jklmnop qrªºæ¸Æ 9… (9hex = 1001bin)
A… µ~stuvwx yz¡¿ÐÝÞ® A… (Ahex = 1010bin)
B… ¢£¥·©§¼ ½¾¬|¯¨´× B… (Bhex = 1011bin)
C… {ABCDEFG HIôöòóõ C… (Chex = 1100bin)
D… }JKLMNOP QR¹ûüùúÿ D… (Dhex = 1101bin)
E… \÷STUVWX YZ²ÔÖÒÓÕ E… (Ehex = 1110bin)
F… 01234567 89³ÛÜÙÚ F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen
  • 41hex: geschütztes Leerzeichen
  • CAhex: weicher/kurzer Trennstrich
  • FFhex: Steuerzeichen (EBCDIC)

EBCDIC-Variante EBCDIC.DF.03-DRV (CCSN:EDF03DRV)

EBCDIC.DF.03-DRV oder CCSN:EDF03DRV ist eine Variante des EBCDIC-Codes, die auf Fujitsu-Großrechnern unter dem Betriebssystem BS2000/OSD zur Darstellung des deutschen Zeichensatzes verwendet wird. Diese Variante weicht speziell bei der Definition der deutschen Umlaute von anderen EBCDIC-Varianten ab.

EBCDIC.DF.03-DRV
Deutsch
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
4… `.<(+|ö 4… (4hex = 0100bin)
5… &  !$*) ; 5… (5hex = 0101bin)
6… -/ ^, %_> ? 6… (6hex = 0110bin)
7…  :#'=" 7… (7hex = 0111bin)
8… abcdefg hi 8… (8hex = 1000bin)
9… jklmnop qr 9… (9hex = 1001bin)
A… stuvwx yz A… (Ahex = 1010bin)
B… B… (Bhex = 1011bin)
C… ABCDEFG HI C… (Chex = 1100bin)
D… JKLMNOP QR D… (Dhex = 1101bin)
E… STUVWX YZ E… (Ehex = 1110bin)
F… 01234567 89 F… (Fhex = 1111bin)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
  • 40hex: Leerzeichen

Eine weitere Besonderheit in diesem Zeichensatz ist die Doppelbelegung der Zeichen an den Positionen:

  • 4Fhex: | oder ö
  • 7Chex: @ oder §
  • BBhex: [ oder Ä
  • BChex: \ oder Ö
  • BDhex: ] oder Ü
  • FBhex: { oder ä
  • FDhex: } oder ü
  • FFhex: ~ oder ß

Die Darstellung wird am BS2000/OSD ausschließlich durch die verwendete Hardware bzw. durch die verwendeten Schriften unterschieden.

Steuerzeichen

Die ersten 64 Zeichen von 00hex bis 3Fhex definieren Steuerzeichen und sind für alle EBCDIC-Codepages identisch.

Codepage 500
Belgien, Kanada, Schweiz, International
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F
0… NULSOHSTXETXSELHTRNLDEL GESPSRPTVTFFCRSOSI 0… (0hex = 00002)
1… DLEDC1DC2DC3RES
ENP
NLBSPOC CANEMUBSCU1IFSIGSIRSIUS
ITB
1… (1hex = 00012)
2… DSSOSFSWUSBYP
INP
LFETBESC SASFESM
SW
CSPMFAENQACKBEL 2… (2hex = 00102)
3… SYNIRPPTRNNBSEOT SBSITRFFCU3DC4NAKSUB 3… (3hex = 00112)
…0…1…2…3…4…5…6…7…8…9…A…B…C…D…E…F

Einige Steuerzeichen haben ihre Bedeutung seit den frühen Versionen von EBCDIC geändert.

  • 04hex war in der ersten EBCDIC-Version von 1964 mit einem Zeichen namens PF (Punch Off, „Lochung aus“) belegt., später wurde daraus ST (String Terminator, „Ende der Zeichenkette“), und heute (2007) ist es mit SEL (Select, „auswählen“) belegt, für das im ASCII-Code keine Entsprechung existiert.
  • 06hex ist heute (2007) mit RNL (Required New Line, „benötigt neue Zeile“) belegt. Ursprünglich war es mit LC (Lower Case, „Kleinbuchstaben“) belegt und zwischenzeitlich auch mit SSA (System Status Available, „Systemstatus verfügbar“).
  • 08hex ist heute mit GE (Graphic Escape, „Umschalten in den Grafikmodus“) belegt. Ursprünglich war es mit EPA (End of Protected Area, „Ende des geschützten Bereichs“) belegt.
  • 09hex ist heute mit SPS (Superscript, „Hochstellung“) belegt. Ursprünglich war es mit RLF (Reverse Line Feed, „umgekehrter Zeilenvorschub“) belegt.
  • 0Ahex ist heute mit RPT (Repeat, „Wiederholen“) belegt. Ursprünglich war es mit SMM (Start of Manual Message, „Beginn einer händischen Mitteilung“) belegt.
  • 13hex ist heute mit DC3 (Device Control 3, „Gerätekontrollkode 3“) belegt. Ursprünglich war es mit TM (Top Margin, „oberer Rand“) belegt.
  • 14hex ist heute mit „RES/ENP“ (Restore/Enable Presentation, „Darstellung wiederherstellen/aktivieren“) belegt. Zwischenzeitlich war es auch OSC für Operating System Command („Betriebssystembefehl“) belegt.
  • 17hex ist heute mit POC (Program-Operator Communication, „Kommunikation mit Programmbediener“) belegt. Ursprünglich war es IL (Idle, „Leerlauf“) und zwischenzeitlich auch mit ESA (End Selected Area, „Ende des ausgewählten Bereichs“) belegt.
  • 1Ahex ist heute mit UBS (Unit backspace, „eine Einheit zurück“) belegt. Ursprünglich war es mit CC (Cursor Control, „Steuerung der Schreibmarke“) belegt.

Die Abkürzung CU1 steht für „Customer Use“, also ein frei nutzbares Steuerzeichen.

Die Steuerzeichen IFS (Interchange File Separator), IGS (Interchange Group Separator), IRS (Interchange Record Separator) und IUS (Interchange Unit Separator) sind Trennzeichen, die den ASCII-Steuerzeichen FS, GS, RS und US entsprechen. ITB (Intermediate Transmission Block, „dazwischen liegender Sendeblock“) ist ein anderer Name für IUS.

Recht auf korrekte Schreibweise

2021 bestand ein Bankkunde auf der korrekten Schreibweise seines Nachnamens inkl. Akutzeichen "é". Das Gericht gab der Klage statt, auf Basis der Europäischen Datenschutzgrundverordnung, Artikel 16 "Recht auf Berichtigung". Die belgische Bank argumentierte vergeblich, dass ihr 1995 eingeführtes System zur Verwaltung der Kundendaten die Zeichenkodierung EBCDIC verwende, die dieses Zeichen nicht unterstütze.

Einzelnachweise

  1. The EBCDIC character set. ibm.com, abgerufen am 26. Oktober 2021
  2. 1 2 Appendix G: Control Character Mappings. In: Character Data Representation Architecture Reference. IBM (ibm.com PDF, S. 311).
  3. 1 2 Dik T. Winter: Standards on Codes. (Nicht mehr online verfügbar.) Archiviert vom Original am 16. Juni 2007; abgerufen am 13. August 2007.
  4. https://www.gegevensbeschermingsautoriteit.be/publications/arrest-van-9-oktober-2019-van-het-marktenhof.pdf
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.