ISO/IEC 646
Standard | ISO/IEC 646, ITU T.50 |
---|---|
Klasyfikacja | 7-bitowe podstawowe kodowanie łacińskie |
Poprzedzony | US-ASCII |
zastąpiony przez | ISO/IEC 8859 , ISO/IEC 10646 |
Inne powiązane kodowanie |
DEC NRCS , World System Teletext Adaptacje do innych alfabetów : ELOT 927 , Symbol , KOI-7 , SRPSCII i MAKSCII , ASMO 449 , SI 960 |
ISO/IEC 646 to zbiór norm ISO / IEC , określanych jako technologia informacyjna — 7-bitowy kodowany zestaw znaków ISO do wymiany informacji i rozwijany we współpracy z ASCII co najmniej od 1964 r. Od pierwszego wydania w 1967 r. określa 7 - bitowy kod znakowy, z którego wywodzi się kilka norm krajowych.
Norma ISO/IEC 646 została również ratyfikowana przez ECMA jako ECMA-6 . Pierwsza wersja ECMA-6 została opublikowana w 1965 roku na podstawie prac Komitetu Technicznego TC1 ECMA, które prowadził od grudnia 1960 roku.
Znaki w podstawowym zestawie znaków ISO/IEC 646 są znakami niezmiennymi . Ponieważ ta część ISO/IEC 646, czyli niezmienny zestaw znaków wspólny dla wszystkich krajów, określała tylko te litery używane w podstawowym alfabecie łacińskim ISO , kraje używające dodatkowych liter potrzebnych do stworzenia narodowych wariantów ISO/IEC 646, aby móc używać ich rodzimych skryptów. Ponieważ przesyłanie i przechowywanie kodów 8-bitowych nie było wówczas standardem, znaki narodowe musiały być dostosowane do ograniczeń 7-bitowych, co oznaczało, że niektóre znaki pojawiające się w ASCII nie pojawiają się w innych krajowych wariantach ISO/IEC 646.
Historia
Norma ISO/IEC 646 i jej poprzednik ASCII ( ASA X3.4 ) w dużej mierze potwierdziły istniejącą praktykę dotyczącą kodowania znaków w branży telekomunikacyjnej .
Ponieważ ASCII nie zapewniał liczby znaków potrzebnych w językach innych niż angielski, stworzono szereg wariantów narodowych, które zastąpiły niektóre rzadziej używane znaki potrzebnymi. Ze względu na niekompatybilność różnych wariantów krajowych wprowadzono międzynarodową wersję referencyjną (IRV) ISO / IEC 646, próbując przynajmniej ograniczyć zastąpiony zestaw do tych samych znaków we wszystkich wariantach. Oryginalna wersja (ISO 646 IRV) różniła się od ASCII tylko tym punktem kodowym 0x24, znak dolara ASCII ($) został zastąpiony międzynarodowym symbolem waluty (¤). Ostateczna wersja kodu ISO/IEC 646:1991 z 1991 r. jest również znana jako ITU T.50 , International Reference Alphabet lub IRA, dawniej International Alphabet No. 5 (IA5). Norma ta umożliwia użytkownikom korzystanie z 12 znaków zmiennych (tj. dwóch alternatywnych znaków graficznych i 10 znaków zdefiniowanych w krajach). Wśród tych ćwiczeń, ISO 646:1991 IRV (International Reference Version) jest wyraźnie zdefiniowany i identyczny z ASCII .
Seria norm ISO/IEC 8859 regulująca 8-bitowe kodowanie znaków zastępuje międzynarodową normę ISO/IEC 646 i jej krajowe warianty, zapewniając 96 dodatkowych znaków z dodatkowym bitem, unikając w ten sposób jakiegokolwiek zastępowania kodów ASCII. Standard ISO/IEC 10646 , bezpośrednio powiązany z Unicode , zastępuje wszystkie zestawy ISO 646 i ISO/IEC 8859 jednym ujednoliconym zestawem kodowania znaków wykorzystującym większą wartość 21-bitową.
Dziedzictwo ISO/IEC 646 jest widoczne w systemie Windows, gdzie w wielu krajach Azji Wschodniej ukośnik odwrotny używany w nazwach plików jest renderowany jako ¥ lub inne znaki, takie jak ₩ . Pomimo faktu, że inny kod dla ¥ był dostępny nawet na oryginalnej stronie kodowej IBM PC 437 , a osobny dwubajtowy kod dla ¥ jest dostępny w Shift JIS (chociaż często wykorzystuje to alternatywne mapowanie ), utworzono tak dużo tekstu z kodem ukośnika odwrotnego użytym dla ¥ (ponieważ Shift_JIS jest oficjalnie oparty na ISO 646: JP, chociaż Microsoft odwzorowuje go jako ASCII), że nawet nowoczesne czcionki Windows uznały za konieczne renderowanie kodu w ten sposób. Podobna sytuacja występuje w przypadku ₩ i EUC-KR . Innym dziedzictwem jest istnienie trygrafów w języku programowania C.
Opublikowane standardy
- ISO/R646-1967
- ISO 646:1972
- ISO 646:1983
- ISO/IEC 646:1991
- ECMA-6 (30.04.1965), wydanie pierwsze
- ECMA-6 (1967-06), wydanie drugie
- ECMA-6 (1970-07), wydanie trzecie
- ECMA-6 (1973-08), wydanie czwarte
- ECMA-6 (1984-12, 1985-03), wydanie piąte
- ECMA-6 (1991-12, 1997-08), wydanie szóste
Układ strony kodowej
W poniższej tabeli przedstawiono niezmienny zestaw znaków ISO/IEC 646. Każdy znak jest pokazany wraz z jego w Unicode . Krajowe punkty kodowe są szare z zastępowanym znakiem ASCII. Żółty oznacza znak, który w niektórych regionach może być łączony z poprzednim znakiem jako znak diakrytyczny przy użyciu znaku cofania , co może wpływać na wybór glifów .
Oprócz niezmiennych ograniczeń zestawu, 0x23 jest ograniczone do # lub £ , a 0x24 jest ograniczone do $ lub ¤ w ECMA-6:1991, co odpowiada ISO/IEC 646:1991. Jednak te ograniczenia nie są przestrzegane przez wszystkie warianty krajowe.
ISO/IEC 646(-INV) | ||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | mi | F | |
0x | NUL | SOH | STX | ETX | OT | ENQ | POK | BEL | BS | HT | LF | VT | FF | CR | WIĘC | SI |
1x | DLE | DC1 | ST2 | DC3 | DC4 | NAK | SYN | ETB | MÓC | EM | POD | WYJŚCIE | FS | GS | RS | NAS |
2x | Sp | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
3x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4x | @ | A | B | C | D | mi | F | G | H | I | J | k | Ł | M | N | O |
5x | P | Q | R | S | T | u | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
6x | ` | A | B | C | D | mi | F | G | H | I | J | k | l | M | N | o |
7x | P | Q | R | S | T | u | w | w | X | y | z | { | | | } | ~ | DEL |
Powiązane rodziny kodowania
Krajowy zestaw znaków zastępczych
National Replacement Character Set ( NRCS ) to rodzina 7-bitowych kodowań wprowadzonych w 1983 roku przez firmę DEC wraz z serią terminali komputerowych VT200 . Jest blisko spokrewniony z ISO / IEC 646, ponieważ jest oparty na podobnym niezmiennym podzbiorze ASCII, różniącym się zachowaniem $
jako niezmiennego, ale nie _
(chociaż większość wariantów NRCS zachowuje _
, a zatem jest zgodna z niezmiennym zestawem ISO / IEC 646) . Większość wariantów NRCS jest blisko spokrewniona z odpowiednimi krajowymi wariantami ISO/IEC 646, jeśli takie istnieją, z wyjątkiem wariant holenderski .
Telegazeta systemu światowego
Europejski standard telekomunikacyjny ETS 300 706, „Specyfikacja ulepszonego teletekstu”, definiuje zestawy kodów łacińskich, greckich, cyrylicy, arabskich i hebrajskich z kilkoma wariantami narodowymi zarówno dla łaciny, jak i cyrylicy. Podobnie jak NRCS i ISO/IEC 646, w ramach wariantów łacińskich rodzina kodowań znana jako zestaw G0 jest oparta na podobnym niezmiennym podzbiorze ASCII, ale nie zachowuje ani $ ,
ani _
jako niezmienników. W przeciwieństwie do NRCS, warianty często znacznie różnią się od odpowiednich krajowych wariantów ISO/IEC 646.
Kody wariantów i opisy
Warianty krajowe ISO/IEC 646
Niektóre krajowe warianty ISO / IEC 646 są następujące:
Kod | ISO-IR | ISO/IEC ESC | Zatwierdzony | Norma krajowa | Opis |
---|---|---|---|---|---|
CA | 121 | ESC 2/8 7/7 | ISO 646 | CSA Z243.4-1985-1 |
Kanada (alternatywa nr 1, z „î”) ( francuski , klasyczna) ( strona kodowa 1020 ) |
CA2 | 122 | ESC 2/8 7/8 | ISO 646 | CSA Z243.4-1985-2 |
Kanada (alternatywa nr 2, z „É”) ( francuski , zreformowana ortografia) |
CN | 57 | ESC 2/8 5/4 | ? | GB/T 1988-80 | Chińska Republika Ludowa (łacina podstawowa) |
CU | 151 | ESC 2/8 2/1 4/1 | ISO 646 | NC 99-10:81 / NC 00-10:81 | Kuba ( hiszpański ) |
DANO | 9-1 | ESC 2/8 4/5 | SIP ? | NATS-DANO |
Norwegia i Dania (teksty dziennikarskie). Niezmienny punkt kodowy 0x22 jest wyświetlany jako « , (porównaj „ w IRV). Jest jednak nadal uważany za podwójny cudzysłów. Towarzyszy SEFI (NATS-SEFI). |
DE | 21 | ESC 2/8 4/11 | ISO 646 | DIN 66003 | Niemcy ( niemiecki ) ( strona kodowa 1011 , 20106 ) |
DK | — | ? | DS 2089 | Dania ( duński ) ( strona kodowa 1017 ) | |
ES | 17 | ESC 2/8 5/10 | ECMA | Olivetti | hiszpański (międzynarodowy) ( strona kodowa 1023 ) |
ES2 | 85 | EKS 2/8 6/8 | ECMA | IBM | Hiszpania ( baskijski , kastylijski , kataloński , galicyjski ) ( strona kodowa 1014 ) |
FI | 10 | ISO 646 | SFS 4017 | Finlandia (wersja podstawowa) ( Strona kodowa 1018 ) | |
FR | 69 | ESC 2/8 6/6 | ISO 646 | AFNOR NF Z 62010-1982 | Francja ( francuski ) ( strona kodowa 1010 ) |
FR1 | 25 | ESC 2/8 5/2 | ISO 646 | AFNOR NF Z 62010-1973 | Francja (przestarzałe od kwietnia 1985 r.) ( Strona kodowa 1104 ) |
GB | 4 | EKS 2/8 4/1 | ISO 646 | BS 4730 | Wielka Brytania ( angielski ) ( strona kodowa 1013 ) |
HU | 86 | ESC 2/8 6/9 | ISO 646 | MSZ 7795/3 | Węgry ( węgierski ) |
TJ | 207 | ? | NSAI 433:1996 | Irlandia ( irlandzki ) | |
INW | 170 | ESC 2/8 2/1 4/2 | ISO 646 | ISO 646:1983 | Niezmienny podzbiór |
(IRV) | 2 | ESC 2/8 4/0 | ISO 646 | ISO 646:1973 | Międzynarodowa wersja referencyjna. 0x7E jako nadkreślenie (ISO-IR-002). |
? | ? | ISO 646 | ISO 646:1983 | Międzynarodowa wersja referencyjna. 0x7E jako tylda ( strona kodowa 1009 , 20105 ). | |
Międzynarodowa wersja referencyjna ISO 646:1991 jest zgodna z wersją amerykańską (patrz poniżej). | |||||
JEST | ? | ? | ? | Islandia ( islandzki ) | |
TO | 15 | EKS 2/8 5/9 | ECMA | UNI 0204-70 / Olivetti ? | włoski ( strona kodowa 1012 ) |
JP | 14 | ESC 2/8 4/10 | ISO 646 | JIS C 6220:1969-ro | Japonia ( Romaji ) ( strona kodowa 895 ). Używany również jako kod 8-bitowy z odpowiednim dodatkowym zestawem Katakana . |
JP-OCR-B | 92 | ESC 2/8 6/14 | ISO 646 | JIS C 6229-1984-b | Japonia ( OCR -B) |
KR | — | ? | KS C 5636-1989 | Korea Południowa | |
MT | — | ? | ? | Malta ( maltański , angielski ) | |
NL | — | ECMA | IBM | Holandia ( niderlandzki ) ( strona kodowa 1019 ) | |
NIE | 60 | EKS 2/8 6/0 | ISO 646 | NS4551 wersja 1 | Norwegia ( strona kodowa 1016 ) |
NO2 | 61 | ESC 2/8 6/1 | ISO 646 | NS4551 wersja 2 | Norwegia (przestarzała od czerwca 1987) (strona kodowa 20108) |
pl | — | BN-74/3101-01 | Polska (język polski ma 18 liter ze znakami diakrytycznymi, ale tylko 9 małych liter jest znormalizowanych ze względu na spacje kodowe). | ||
PT | 16 | ESC 2/8 4/12 | ECMA | Olivetti | portugalski (międzynarodowy) |
PT2 | 84 | ESC 2/8 6/7 | ECMA | IBM | Portugalia ( portugalski , hiszpański ) ( strona kodowa 1015 ) |
SE | 10 | ESC 2/8 4/7 | ISO 646 | SEN 850200 Załącznik B, SIS 63 61 27 | Szwecja (podstawowy szwedzki ) ( strona kodowa 1018 , D47) |
SE2 | 11 | ESC 2/8 4/8 | ISO 646 | SEN 850200 Załącznik C, SIS 63 61 27 | Szwecja (rozszerzony szwedzki dla nazw) (strona kodowa 20107, E47) |
SEFI | 8-1 | ESC 2/8 4/3 | SIS | NATS-SEFI | Szwecja i Finlandia (teksty dziennikarskie). Towarzyszy DANO (NATS-DANO). |
T.61-7bit | 102 | EKS 2/8 7/5 | ? | Zalecenie ITU / CCITT T.61 | Międzynarodowy ( Teleteks ). Używany również z odpowiednim zestawem dodatkowym jako kod 8-bitowy. |
TW | — | ? | CN 5205-1996 | Republika Chińska ( Tajwan ) | |
USA / (IRV) | 6 | EKS 2/8 4/2 | ISO 646 | ANSI X3.4-1968 i ISO 646:1983 (także IRV w ISO/IEC 646:1991) | Stany Zjednoczone ( ASCII , strona kodowa 367 , 20127 ) |
TAK | 141 | ESC 2/8 7/10 | ISO 646 | JUS I.B1.002 ( YUSCII ) | była Jugosławia ( chorwacki , słoweński , serbski , bośniacki ) |
INIS | 49 | ESC 2/8 5/7 | MAEA | INIS | Podzbiór ISO 646 IRV |
Pochodne narodowe
Istnieją również krajowe zestawy znaków, które są oparte na normie ISO / IEC 646, ale nie są ściśle zgodne z jej niezmiennym zestawem (patrz także § Pochodne dla innych alfabetów ):
Zestaw znaków | ISO-IR | ISOESC | Zatwierdzony | Norma krajowa | Opis |
---|---|---|---|---|---|
BS_viewdata | 47 | ESC 2/8 5/6 | Poczta brytyjska | Przeglądaj dane i teletekst . Kwadrat danych widoku (⌗) zastąpiono normalnie niezmiennym podkreśleniem (_), którego nie można wyświetlić na docelowym sprzęcie. W rzeczywistości jest to kodowanie WST_Engl firmy Microsoft. | |
GR / grecki7 | 88 | ESC 2/8 6/10 | ? | HOS ELOT 927 | Grecja (wycofana w listopadzie 1986). Używa greckich liter zamiast rzymskich, a zatem nie jest ściśle mówiąc wariantem ISO 646. |
7-letni Grek | 18 | ESC 2/8 5/11 | ECMA | ? | Grecki zestaw graficzny. Podobny w koncepcji do grek7 , ale używa innego mapowania liter. Również wielkie litery podążają za małymi literami. |
łacińsko-grecki | 19 | ESC 2/8 5/12 | ECMA | ? | Łączona grafika łacińsko-grecka (tylko wielkie litery). Następuje po greck7-old , ale zawiera wielkie litery łacińskie bez modyfikacji oraz wielkie litery greckie nad małymi literami łacińskimi. |
Łaciński-Grecki-1 | 27 | ESC 2/8 5/5 | ECMA | Honeywell-Bull | Mieszana grafika łacińsko-grecka (tylko wielkie litery greckie). Wizualnie ujednolica greckie stolice z literami łacińskimi tam, gdzie to możliwe, i dodaje pozostałe greckie stolice. W przeciwieństwie do innych wersji greckich, wszystkie podstawowe litery łacińskie pozostają nienaruszone. Zastępuje jednak niezmienną interpunkcję, a także znaki narodowe, a zatem nadal nie jest ściśle mówiąc wariantem ISO 646. |
swi | — | ECMA | Olivetti |
Szwajcaria ( francuski , niemiecki ) ( strona kodowa 1021 ) Niezmienny punkt kodowy 0x5F zostaje zmieniony z _ na è . Jest DEC NRCS , blisko spokrewnionym z ISO 646, ale brakuje mu odpowiednika w pełni zgodnego z ISO 646. |
Postacie kontrolne
Wszystkie wymienione powyżej warianty są wyłącznie zestawami znaków graficznych i mają być używane z zestawem znaków sterujących C0 , takim jak wymieniony w poniższej tabeli:
ISO-IR | ISOESC | Zatwierdzony | Opis |
---|---|---|---|
1 | EKS 2/1 4/0 | ISO 646 | Kontrole ISO 646 („Kontrole ASCII”) |
7 | ESC 2/1 4/1 | ISO 646 | Kontrole gazet skandynawskich (NATS). |
26 | ESC 2/1 4/3 | ISO 646 | kontrole IPTC |
Powiązane dodatkowe zestawy znaków
W poniższej tabeli wymieniono dodatkowe zestawy znaków graficznych zdefiniowane przez tę samą normę, co określone warianty ISO/IEC 646. Zostałyby one wybrane za pomocą mechanizmu, takiego jak shift out lub super shift NATS (pojedyncza zmiana) lub przez ustawienie ósmego bitu w środowiskach, w których był dostępny:
ISO-IR | ISO/IEC ESC | Norma krajowa | Opis |
---|---|---|---|
8-2 | ESC 2/8 4/4 | NATS-SEFI-ADD | Kod uzupełniający używany z NATS-SEFI. |
9-2 | EKS 2/8 4/6 | NATS-DANO-ADD | Kod uzupełniający używany z NATS-DANO. |
13 | ESC 2/8 4/9 | JIS C 6220:1969-jp | Katakana , używany jako kod uzupełniający z ISO-646-JP. |
103 | ESC 2/8 7/6 | Zalecenie ITU / CCITT T.61 , zestaw uzupełniający | Kod dodatkowy używany z T.61. |
Tabela porównawcza wariantów
Szczegóły zmian dla niektórych z tych wariantów podano w poniższej tabeli. Przypisania znaków niezmienione we wszystkich wymienionych wariantach (tj. które pozostają takie same jak ASCII) nie są pokazane.
Dla ułatwienia porównania wyszczególnione warianty obejmują krajowe warianty ISO/IEC 646, blisko spokrewnione serie krajowych zestawów znaków zastępczych (NRCS) firmy DEC używane na terminalach VT200 , powiązane serie kodowania teletekstu europejskiego systemu światowego zdefiniowane w ETS 300 706 i kilka innych blisko spokrewnione kodowania oparte na ISO/IEC 646. Poszczególne wykresy kodów są połączone z drugiej kolumny. Komórki z innym niż białe tło podkreślają różnice w stosunku do US-ASCII (również podstawowego podzbioru łacińskiego ISO/IEC 10646 i Unicode).
Kilka znaków może być użytych jako znaki łączące , jeśli są poprzedzone lub po których następuje kontrola C0 typu backspace . Potwierdzają to wykresy kodów dla IRV, GB, FR1, CA i CA2, które zauważają, że „', ^
zachowywałoby się jak diereza , ostry akcent , cedilla i daszek (zamiast cudzysłowów , przecinka i strzałki skierowanej w górę ) gdy poprzedza lub następuje po nim spacja. Znak tyldy (~) był podobny wprowadzony jako znak diakrytyczny (˜). Ta metoda kodowania wywodzi się z ery maszyn do pisania/ dalekopisów , kiedy użycie spacji spowodowałoby nadpisanie glifu i można ją uznać za przestarzałą .
Później, gdy szersze zestawy znaków zyskały większą akceptację, ISO / IEC 8859 , zestawy znaków specyficzne dla dostawcy i ostatecznie Unicode stały się preferowanymi metodami kodowania większości tych wariantów.
Kod wariantu | Wykres kodu | Znaki dla każdego zestawu znaków zgodnego z ISO 646/NRCS lub pochodnego | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
USA / IRV (1991) | ISO-IR-006 | ! | " | # | $ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ~ |
Starsze międzynarodowe wersje referencyjne | |||||||||||||||||||
IRV (1973) | ISO-IR-002 | ! | " | # | ¤ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ‾ |
IRV (1983) | CP01009 | ! | " | # | ¤ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ~ |
Niezmienne i inne podzbiory IRV | |||||||||||||||||||
INW | ISO-IR-170 | ! | " | & | : | ? | _ | ||||||||||||
ROZKŁAD.ODWR ( NRCS ) | --- | ! | " | $ | & | : | ? | ||||||||||||
INV ( Telegazeta ) | ETS WST | ! | " | & | : | ? | |||||||||||||
Podzbiór INIS | ISO-IR-049 | $ | : | [ | ] | | | |||||||||||||
T.61 | ISO-IR-102 | ! | " | # | ¤ | & | : | ? | @ | [ | ] | _ | | | ||||||
Azji Wschodniej | |||||||||||||||||||
JP | ISO-IR-014 | ! | " | # | $ | & | : | ? | @ | [ | ¥ | ] | ^ | _ | ` | { | | | } | ‾ |
JP-OCR-B | ISO-IR-092 | ! | " | # | $ | & | : | ? | @ | [ | ¥ | ] | ^ | _ | { | | | } | ||
KR | (KS X 1003) | ! | " | # | $ | & | : | ? | @ | [ | ₩ | ] | ^ | _ | ` | { | | | } | ‾ |
CN | ISO-IR-057 | ! | " | # | ¥ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ‾ |
TW | (CN 5205) | ! | " | # | $ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ‾ |
Brytyjczycy i Irlandczycy | |||||||||||||||||||
GB | ISO-IR-004 | ! | " | £ | $ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ‾ |
GB ( NRC ) | CP01101 | ! | " | £ | $ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ~ |
Wyświetl dane | ISO-IR-047 | ! | " | £ | $ | & | : | ? | @ | ← | ½ | → | ↑ | ⌗ | - | ¼ | ‖ | ¾ | ÷ |
TJ | ISO-IR-207 | ! | " | £ | $ | & | : | ? | O | MI | I | U | A | _ | ó | mi | I | u | A |
włoskojęzyczny lub frankofoński | |||||||||||||||||||
TO | ISO-IR-015 | ! | " | £ | $ | & | : | ? | § | ° | C | mi | ^ | _ | u | A | O | mi | I |
IT ( Telegazeta ) | ETS WST | ! | " | £ | $ | & | : | ? | mi | ° | C | → | ↑ | ⌗ | u | A | O | mi | I |
FR (1983) | ISO-IR-069 | ! | " | £ | $ | & | : | ? | A | ° | C | § | ^ | _ | µ | mi | u | mi | ¨ |
FR (1973) | ISO-IR-025 | ! | " | £ | $ | & | : | ? | A | ° | C | § | ^ | _ | ` | mi | u | mi | ¨ |
Telegazeta FR | ETS WST | ! | " | mi | I | & | : | ? | A | mi | mi | u | I | ⌗ | mi | A | ô | u | C |
CA | ISO-IR-121 | ! | " | # | $ | & | : | ? | A | A | C | mi | I | _ | ô | mi | u | mi | u |
CA2 | ISO-IR-122 | ! | " | # | $ | & | : | ? | A | A | C | mi | MI | _ | ô | mi | u | mi | u |
frankofońsko-niemieckojęzyczny | |||||||||||||||||||
swi ( NRCS ) | CP01021 | ! | " | u | $ | & | : | ? | A | mi | C | mi | I | mi | ô | A | ö | u | u |
niemiecki | |||||||||||||||||||
DE | ISO-IR-021 | ! | " | # | $ | & | : | ? | § | A | O | U | ^ | _ | ` | A | ö | u | SS |
Nordycki (wschodni) i bałtycki | |||||||||||||||||||
FI / SE | ISO-IR-010 | ! | " | # | ¤ | & | : | ? | @ | A | O | A | ^ | _ | ` | A | ö | A | ‾ |
SE2 | ISO-IR-011 | ! | " | # | ¤ | & | : | ? | MI | A | O | A | U | _ | mi | A | ö | A | u |
SE ( NRC ) | CP01106 | ! | " | # | $ | & | : | ? | MI | A | O | A | U | _ | mi | A | ö | A | u |
FI ( NRC ) | CP01103 | ! | " | # | $ | & | : | ? | @ | A | O | A | U | _ | mi | A | ö | A | u |
SEFI (NATS) | ISO-IR-008-1 | ! | " | # | $ | & | : | ? |
|
A | O | A | ■ | _ |
|
A | ö | A | – |
EE ( Telegazeta ) | ETS WST | ! | " | # | õ | & | : | ? | S | A | O | Ż | U | Õ | S | A | ö | ż | u |
LV / LT ( Telegazeta ) | ETS WST | ! | " | # | $ | & | : | ? | S | mi | mi | Ż | C | u | S | A | ų | ż | I |
nordycki (zachodni) | |||||||||||||||||||
DK | CP01017 | ! | " | # | ¤ | & | : | ? | @ | Æ | Ø | A | U | _ | ` | ć | ø | A | u |
DK/NO ( NRC ) | CP01105 | ! | " | # | $ | & | : | ? | A | Æ | Ø | A | U | _ | A | ć | ø | A | u |
DK/NO-alt ( NRCS ) | CP01107 | ! | " | # | $ | & | : | ? | @ | Æ | Ø | A | ^ | _ | ` | ć | ø | A | ~ |
NIE | ISO-IR-060 | ! | " | # | $ | & | : | ? | @ | Æ | Ø | A | ^ | _ | ` | ć | ø | A | ‾ |
NO2 | ISO-IR-061 | ! | " | § | $ | & | : | ? | @ | Æ | Ø | A | ^ | _ | ` | ć | ø | A | | |
DANO (NATS) | ISO-IR-009-1 | ! | « | » | $ | & | : | ? |
|
Æ | Ø | A | ■ | _ |
|
ć | ø | A | – |
JEST | ! | " | # | ¤ | & | : | ? | D | Þ | \ | Æ | O | _ | D | þ | | | ć | ö | |
Hispanofon | |||||||||||||||||||
ES | ISO-IR-017 | ! | " | £ | $ | & | : | ? | § | ¡ | N | ¿ | ^ | _ | ` | ° | N | C | ~ |
ES2 | ISO-IR-085 | ! | " | # | $ | & | : | ? | · | ¡ | N | C | ¿ | _ | ` | ´ | N | C | ¨ |
CU | ISO-IR-151 | ! | " | # | ¤ | & | : | ? | @ | ¡ | N | ] | ¿ | _ | ` | ´ | N | [ | ¨ |
Hispanofon-luzofon | |||||||||||||||||||
Telegazeta ES/PT | ETS WST | ! | " | C | $ | & | : | ? | ¡ | A | mi | I | ó | u | ¿ | u | N | mi | A |
Luzofon | |||||||||||||||||||
PT | ISO-IR-016 | ! | " | # | $ | & | : | ? | § | A | C | Õ | ^ | _ | ` | A | C | õ | ° |
PT2 | ISO-IR-084 | ! | " | # | $ | & | : | ? | ´ | A | C | Õ | ^ | _ | ` | A | C | õ | ~ |
PT ( NRC ) | --- | ! | " | # | $ | & | : | ? | @ | A | C | Õ | ^ | _ | ` | A | C | õ | ~ |
grecki | |||||||||||||||||||
Latin-GR mieszane | ISO-IR-027 | Ξ | " | Γ | ¤ | & | Ψ | Π | Δ | Ω | Θ | Φ | Λ | Σ | ` | { | | | } | ‾ |
ISO-IR-088 (GR / ELOT 927), ISO-IR-018 i ISO-IR-019 zastępują litery rzymskie literami greckimi i są wyszczególnione w osobnej tabeli . | |||||||||||||||||||
słowiański (alfabet łaciński) | |||||||||||||||||||
TAK | ISO-IR-141 | ! | " | # | $ | & | : | ? | Ż | S | Đ | C | C | _ | ż | S | đ | C | C |
Telegazeta YU | ETS WST | ! | " | # | MI | & | : | ? | C | C | Ż | Đ | S | mi | C | C | ż | đ | S |
YU-alt Telegazeta | ETS WST | ! | " | # | $ | & | : | ? | C | C | Ż | Đ | S | mi | C | C | ż | đ | S |
CS/CZ/SK ( telegazeta ) | ETS WST | ! | " | # | ů | & | : | ? | C | T | ż | ý | I | R | mi | A | mi | u | S |
PL | BN-74/3101-01 | ! | " | # | zł | & | : | ? | mi | ź | \ | N | S | _ | A | ó | Ł | ż | C |
PL Telegazeta | ETS WST | ! | " | # | N | & | : | ? | A | Ƶ | S | Ł | C | ó | mi | ż | S | Ł | ź |
Adaptacje cyrylicy zastępują litery rzymskie i są szczegółowo opisane w osobnej tabeli | |||||||||||||||||||
Inne | |||||||||||||||||||
NL | CP01019 | ! | " | # | $ | & | : | ? | @ | [ | \ | ] | ^ | _ | ` | { | | | } | ‾ |
NL NRC | CP01102 | ! | " | £ | $ | & | : | ? | ¾ | ij | ½ | | | ^ | _ | ` | ¨ | ƒ | ¼ | ´ |
HU | ISO-IR-086 | ! | " | # | ¤ | & | : | ? | A | MI | O | U | ^ | _ | A | mi | ö | u | ˝ |
MT | ! | " | # | $ | & | : | ? | @ | G | ż | H | ^ | _ | C | G | Ż | H | C | |
RO ( Telegazeta ) | ETS WST | ! | " | # | ¤ | & | : | ? | T | A | S | A | I | I | T | A | S | A | I |
TR ( Telegazeta ) | ETS WST | ! | " | TL | G | & | : | ? | I | S | O | C | U | G | I | S | ö | C | u |
Pochodne dla innych alfabetów
Niektóre 7-bitowe zestawy znaków dla alfabetów innych niż łacińskie wywodzą się ze standardu ISO / IEC 646: same nie stanowią ISO / IEC 646 ze względu na nieprzestrzeganie jego niezmiennych punktów kodowych (często zastępując litery co najmniej jednego przypadku), ze względu na obsługę różnych alfabetów, dla których zestaw krajowych punktów kodowych zapewnia niewystarczającą przestrzeń kodowania. Przykłady obejmują:
- 7-bitowy turkmeński (ISO-IR-230).
- 7-bitowy grecki.
- W ELOT 927 (ISO-IR-088) alfabet grecki jest odwzorowywany w porządku alfabetycznym (z wyjątkiem końcowej sigmy) na pozycje 0x61–0x71 i 0x73–0x79, nad małymi literami łacińskimi.
- ISO-IR-018 odwzorowuje alfabet grecki na obu wielkościach liter, używając innego schematu (nie w porządku alfabetycznym, ale starając się, tam gdzie to możliwe, dopasować litery greckie do liter rzymskich, które w pewnym sensie odpowiadają), a ISO-IR-019 odwzorowuje alfabet grecki wielkie litery alfabetu nad małymi literami łacińskimi przy użyciu tego samego schematu, co ISO-IR-018.
- Dolna połowa kodowania znaków czcionki Symbol wykorzystuje własny schemat odwzorowywania greckich liter obu przypadków na rzymskie litery ASCII, próbując również odwzorować greckie litery na rzymskie, które w pewnym sensie odpowiadają, ale podejmując różne decyzje w tym względzie (zob. wykres poniżej). Zastępuje również niezmienne punkty kodowe 0x22 i 0x27 oraz pięć krajowych punktów kodowych symbolami matematycznymi. Chociaż nie jest przeznaczony do składu prozy greckiej, czasami jest używany do tego celu.
- homoglifów alfabetu łacińskiego ; chociaż jest wyraźnie oparty na ISO / IEC 646, niektóre z nich są mapowane na punkty kodowe, które są niezmienne w ISO / IEC 646 (0x21, 0x3A i 0x3F), a zatem nie jest to prawdziwy wariant ISO / IEC 646.
- World System dla języka greckiego wykorzystuje jeszcze inny schemat odwzorowywania greckich liter w porządku alfabetycznym na litery ASCII w obu przypadkach, w szczególności obejmujący kilka liter ze znakami diakrytycznymi.
- 7-bitowa cyrylica
- KOI-7 lub Short KOI, używany w języku rosyjskim . Znaki cyrylicy są odwzorowywane na pozycje 0x60–0x7E, nad małymi literami łacińskimi, w miarę możliwości dopasowując litery homologiczne (gdzie в jest odwzorowywane na w, a nie v). Zastąpiony przez KOI-8 .
- SRPSCII i MAKSCII , cyrylicowe warianty YUSCII (wariant łaciński to YU / ISO-IR-141 na powyższym wykresie), używane odpowiednio w języku serbskim i macedońskim . W dużej mierze homologiczny do łacińskiego wariantu YUSCII (zgodnie z serbskimi zasadami digrafii ), z wyjątkiem Љ (lj), Њ (nj), Џ (dž) i ѕ (dz), które odpowiadają dwuznakom w ortografii alfabetu łacińskiego i są mapowane nad literami, które nie są używane w języku serbskim lub macedońskim (q, w, x, y).
- Zestawy G0 dla kodowań telegazety World System dla języka rosyjskiego / bułgarskiego i ukraińskiego używają zestawów G0 podobnych do KOI-7 z pewnymi modyfikacjami. Odpowiedni zestaw G0 dla serbskiej cyrylicy wykorzystuje schemat oparty na kodowaniu teletekstu dla serbsko-chorwackiego i słoweńskiego alfabetu łacińskiego , w przeciwieństwie do znacznie różniącego się YUSCII.
- 7-bitowy hebrajski, SI 960 . Alfabet hebrajski jest odwzorowany na pozycje 0x60–0x7A, nad małymi literami łacińskimi (i akcentem poważnym dla aleph). 7-bitowy hebrajski był zawsze przechowywany w porządku wizualnym. To odwzorowanie z ustawionym wysokim bitem, tj. literami hebrajskimi w 0xE0–0xFA, to ISO/IEC 8859-8 . Kodowanie teletekstu World System dla hebrajskiego wykorzystuje te same mapowania liter, ale używa BS_Viewdata jako podstawowego kodowania (podczas gdy SI 960 używa US-ASCII) i zawiera znak szekla w 0x7B.
- 7-bitowy arabski, ASMO 449 (ISO-IR-089). Alfabet arabski jest odwzorowany na pozycje 0x41–0x5A i 0x60–0x6A, nad dużymi i małymi literami łacińskimi.
Porównanie niektórych z tych kodowań znajduje się poniżej. Pokazany jest tylko jeden przypadek, z wyjątkiem przypadków, w których przypadki są odwzorowane na różne litery. W takich przypadkach mapowanie z najmniejszym kodem jest wyświetlane jako pierwsze. Dla niektórych listów podano możliwe transkrypcje; tam, gdzie to zostanie pominięte, można uznać, że litera odpowiada literze rzymskiej, na której jest odwzorowana.
angielski ( ASCII ) |
Alfabety cyrylicy | grecki alfabet | hebrajski | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Półtransliteracyjny | Naturalnie zamówione | ||||||||||
Rosyjski ( KOI-7 ) |
rosyjski, bułgarski ( WST RU/BG ) |
ukraiński ( WST UKR ) |
serbski ( SRPSCII ) |
macedoński ( MAKSCII ) |
serbski, macedoński ( WST SRP ) |
grecki ( symbol ) |
grecki (IR-18) |
Grecki ( ELOT 927 ) |
Grecki ( WST EL ) |
hebrajski ( SI 960 ) |
|
@ ` |
Ю (ju/yu) | Ю (ju/yu) | Ю (ju/yu) | Ж (ž) | Ж (ž) | Ч (č) |
≅ ‾ |
´ ` |
@ ` |
ΐ ΰ |
א (ʾ/ʔ) |
A | А | А (a/á) | А | А | А | А | Α | Α | Α | Α | ב (b) |
B | Б | Б | Б | Б | Б | Б | B | B | B | B | ג (g) |
C | Ö (c/ts) | Ö (c/ts) | Ö (c/ts) | Ö (c/ts) | Ö (c/ts) | Ö (c/ts) | Χ (ch/kh) | Ψ (ps) | Γ (g) | Γ (g) | ד (d) |
D | Ę | Ę | Ę | Ę | Ę | Ę | Δ | Δ | Δ | Δ | ה (h) |
mi | Е (je/ye) | Е (je/ye) | Е (e) | Е (e) | Е (e) | Е (e) | Ε | Ε | Ε | Ε | ו (w) |
F | Ф | Ф | Ф | Ф | Ф | Ф | Φ (ph/f) | Φ (ph/f) | Ζ (z) | Ζ (z) | ז (z) |
G | Г | Г | Г | Г | Г | Γ | Γ | Γ | Η (ē) | Η (ē) | ח (ch/kh) |
H | Х (h/kh/ch) | Х (h/kh/ch) | Х (h/kh/ch) | Х (h/kh/ch) | Х (h/kh/ch) | Х (h/kh/ch) | Η (ē) | Η (ē) | Θ (th) | Θ (th) | ט (tt) |
I | И | И | И (y) | И | И | И | I | I | I | I | י (j/y) |
J | Й (j/r) | Й (j/r) | Й (j/r) | Ј (j/y) | Ј (j/y) | Ј (j/y) |
ϑ (th) ϕ (ph/f) |
Ξ (x/ks) | K (k) | ך (k finał) | |
k | K | K | K | K | K | K | K | K | K | Λ (l) | כ |
Ł | Ł | Ł | Ł | Ł | Ł | Ł | Λ | Λ | Λ | Μ (m) | ל |
M | M | M | M | M | M | M | Μ | Μ | Μ | Ν (n) | ם (m końcowy) |
N | Н | Н | Н | Н | Н | Н | Ν | Ν | Ν | Ξ (x/ks) | מ (m) |
O | О | О | О | О | О | О | Ο | Ο | Ξ (x/ks) | Ο | ן (n końcowe) |
P | П | П | П | П | П | П | Π | Π | Ο (o) | Π | נ (n) |
Q | Я (ja/ya) | Я (ja/ya) | Я (ja/ya) | Љ (lj/ly) | Љ (lj/ly) | Ќ (Ḱ/kj) | Θ (th) | ͺ ( |
Π (p) | Ρ (r) | ס (s) |
R | Р | Р | Р | Р | Р | Р | Ρ | Ρ | Ρ |
ʹ ς (s ostateczna) |
ע (ʽ/ŋ) |
S | С | С | С | С | С | С | Σ | Σ | Σ | Σ | ף (p ostateczna) |
T | T | T | T | T | T | T | Τ | Τ | Τ | Τ | פ (p) |
u | У | У | У | У | У | У | Υ | Θ (th) | Υ | Υ | ץ (ṣ / ts końcowy) |
V | Ж (ž) | Ж (ž) | Ж (ž) | В | В | В |
ς (s końcowy) ϖ (p) |
Ω (o) | Φ (f/ph) | Φ (f/ph) | צ (ṣ/ts) |
W | B (v) | B (v) | B (v) | Њ (nj/ny/ñ) | Њ (nj/ny/ñ) | Ѓ (ǵ/gj) | Ω (o) | ς (s ostateczna) | ς (s ostateczna) | Χ (ch/kh) | ק (q) |
X | Ü (') | Ü (') | Ü (') | Џ (dz) | Џ (dz) | Љ (lj/ly) | Ξ | Χ (ch/kh) | Χ (ch/kh) | Ψ (ps) | ר (r) |
Y | Ű (y/ı) | Ъ (″/ǎ/ŭ) | І (i) | ½ (dz) | ½ (dz) | Њ (nj/ny/ñ) | Ψ (ps) | Υ (u) | Ψ (ps) | Ω (o) | ש (š/sz) |
Z | З | З | З | З | З | З | Ζ | Ζ | Ω (o) | Ϊ | ת (t) |
[ { |
Ř (š/sz) | Ř (š/sz) | Ř (š/sz) | Ř (š/sz) | Ř (š/sz) | Ћ (ć) |
[ { |
῏ ῟ |
[ { |
Ϋ |
[ { |
\ | |
Э (e) | Э (e) | Є (je / ye) | Â (đ/dj) | Ѓ (ǵ/gj) | Ж (ž) |
∴ | |
᾿ ῾ (h) |
\ | |
ά ό |
\ | |
] } |
Щ (šč) | Щ (šč) | Щ (šč) | Ћ (ć) | Ќ (Ḱ/kj) | Â (đ/dj) |
] } |
῎῞ _ |
] } |
έ ύ |
] } |
^ ~ |
Ч (č) | Ч (č) | Ч (č) | Ч (č) | Ч (č) | Ř (š/sz) |
⊥ ~ |
˜ ¨ |
^ ‾ |
ή ώ |
^ ‾ |
_ | Ъ (″) | Ű (y/ı) | Ї (ji/yi) | _ | _ | Џ (dz) | _ | _ | _ | ί | _ |
Zobacz też
- ISO / IEC 2022 Technologia informacyjna: Struktura kodu znaków i techniki rozszerzania
- ISO/IEC 6937 (ANSI)
- ISO/IEC JTC 1/SC 2
przypisy
Dalsza lektura
-
Fischer, Eric, wyd. (1975) [1972]. Dokumenty źródłowe dotyczące historii kodów znaków, 1972–1975 (kompilacja). Zarchiwizowane od oryginału w dniu 2020-06-07 . Źródło 2020-06-07
{{ cite book }}
: CS1 maint: bot: stan oryginalnego adresu URL nieznany ( link ) (79 stron), w tym: Bemer, Robert William (1972). „widok historii zestawu znaków ISO” . Dziennik komputerowy Honeywell . Phoenix, Arizona, USA: Honeywell Information Systems. 6 (4): 274-286, 287-291. (13+5 stron) oraz wiele innych dokumentów i korespondencji.
Linki zewnętrzne
- ISO / IEC 646: 1991 Technologia informacyjna - 7-bitowy kodowany zestaw znaków ISO do wymiany informacji
- Zeichensatz nach ISO 646 (ASCII) (w języku niemieckim)
- Historia na stronie GNU Aspell
- Tabele znaków ISO646 Tabele znaków autorstwa Koichi Yasuoki (安 岡 孝) (patrz Krajowe tabele znaków ISO646 i Tabele znaków quasi-ISO646 )
- Turecki Text Deasciifier narzędzie (oparte na statystycznej analizie pentagramu języka tureckiego), które odwraca turecki tekst z ASCII poprzez określenie odpowiednich (ale niejednoznacznych) znaków diakrytycznych zwykle potrzebnych w języku tureckim, ale brakujących w zestawie US-ASCII.