Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Suomalaiset merkit tietokoneissa

30 views
Skip to first unread message

Timo Kiravuo

unread,
Jul 1, 1998, 3:00:00 AM7/1/98
to

Suomalaiset merkit tietokoneissa

Johdanto

Tietokoneitten ja tietotekniikan kehitys on tapahtunut valtaosin
Yhdysvalloissa, joten käytettävissä oleva merkistö on valittu sen
mukaisesti. Tämä on aiheuttanut muissa maissa jatkuvia ongelmia
kansallisten merkistöjen kanssa. Tämän ohjeen tarkoituksena on selvittää
mitä erilaisia tapoja koodata suomenkielen vaatiman erikoismerkit on
käytössä.


7-bittinen ASCII (American Standard Code for Information Interchange)

7-bittinen peruskoodi, jossa ei ole skandinaavisia merkkejä. Merkit on
saatu käyttöön korvaamalla erikoismerkit {|}[\] skandinaavisilla
merkeillä. Varsin yleinen päätekäytössä. Samoin vanhemmissa
mikrotietokoneissa (Apple ][, CP/M jne.) Lisäksi kirjaimet åäö
sijoittuvat merkistössä muiden kirjaimien jatkoksi, mistä on toisinaan
hyötyä. Silti, toteutus on kömpelö, etenkin kun päätettä käytetään
ohjelmointiin, jolloin on usein tehtävä valinta skandinaavisten merkkien
ja välttämättömien hakasulkujen välillä. Päätteissä tämä standardi
kulkee nimellä SF-2

Kansalliset muunnokset on standardoitu ISO:n 646 -standardissa.

Lisäksi on olemassa versio jossa merkkien {|}[\] lisäksi merkit `@~^ on
korvattu kirjaimilla éÉüÜ. Tätä SF-1:ksi kutsuttua versiota ei
suositella käyttämään, koska kyseiset kirjaimet ovat sangen harvinaisia
ja vastaavia erikoismerkkejä tarvitaan varsin usein.


ISO 8859-1 (ISO Latin-1 alphabet)

Kansainvälisesti hyväksytty merkistö, jossa skandinaaviset merkit on
sijoitettu 8-bittiseen merkistöön tavallisen ASCII-merkistön
yläpuolelle. Merkit 0-127 ovat samat kuin 7-bittisessä ASCII-
merkistössä ja merkit 128-255 sisältävät erilaisia kansallisia merkkejä.


PC-merkistö

IBM-PC ja yhteensopivissa koneissa käytössä oleva 8-bittinen merkistö.
Toteutettu kuten ISO Latin-1 -merkistö, mutta merkkien koodit ovat
toiset. Vanhempi kuin ISO-standardi. Huomattavaa on että Microsoft
Windows-käyttöliittymä PC-koneissa käyttää ISO-standardin mukaisia
merkkejä, joka aiheuttaa ongelmia jo koneen sisäisissä
tiedostonsiirroissa.


Apple Macintosh-merkistö

Kuten PC- ja ISO-merkistö, mutta kolmas erilainen tapa esittää sama
asia.


DEC Multinational

Digital Equipment Corporationin päätteissä käytetty vanha merkistö on
toteutettu samalla tekniikalla kuin muutkin 8-bittiset merkistöt, mutta
merkkien paikat ovat toiset. Huomattavaa on kuitenkin että merkit åäöÅÄÖ
ovat samoissa paikoissa kuin ISO Latin-1 merkistössä, kuten suurin osa
muistakin ISO:n merkeistä. Useimmissa päätteissä on nykyään sekä ISO
Latin-1 että DEC Multinational -merkistöt.

DEC:n merkistöä voidaan myös käyttää 7-bittisenä lähettämällä päätteelle
ASCII-koodi 21 (NAK, control-U) ja kyseinen merkki 7-bittisenä.


EBCDIC

IBM:n suurkoneitten käyttämä merkistö, joka eroaa kaikista muista
merkistöistä. Kansallisia versioita on suuri määrä. Taulukossa esitetty
koodaus on yleisin Suomessa käytössä oleva, mutta muitakin on olemassa.


Roman-8

Hewlet Packardin käyttämä 8-bittinen merkistö.


Postscript

Postscript-tulostuskielessä merkit on nimetty. Lisäksi on olemassa
vakiokoodaus nimettyjen merkkien esittämisestä numero- tai
bittikoodeina. Tämä koodaus ei kuitenkaan vastaa mitään muuta koodausta
eikä käsitä suomalaisia merkkejä. Useimmista Postscript-kirjoittimista
löytyy kuitenkin ISOLatin1Encoding, joka vastaa ISO 8859-1 koodausta.


ISO 10646

ISO:n uusi 8/16/32-bittinen merkistö, joka pyrkii esittämään _kaikki_
tällä planeetalla käytössä olevat kirjoitusmerkit, elävissä ja
kuolleissa kielissä. (Nuolenpäät, riimut, hieroglyyfit jne.)

Standardin 8-bittinen osuus sisältää ISO 8859-1 -merkistön ja
16-bittinen osuus sisältää Unicode-merkistön.


Unicode

16-bittinen merkistö joka sisältää nykyisten elävien kielten tarvitsemat
kirjoitusmerkit. Unicode ja ISO 10646 olivat alunperin kilpailevia
vaihtoehtoja, mutta sittemmin ne on yhdistetty siten että Unicode
sisältyy ISO 10646 -merkistöön.

Taulukko suomalaisten merkkien koodauksista eri järjestelmissä


å ä ö Å Ä Ö

175 173 174 135 133 134 Oct
7-bit 125 123 124 93 91 92 Dec
7D 7B 7C 5D 5B 5C Hex
} { | ] [ \ Asc


Amiga 345 344 366 305 304 326 Oct
ISO 8859-1 229 228 246 197 196 214 Dec
Windows E5 E4 F6 C5 C4 D6 Hex


206 204 224 217 216 231 Oct
PC 134 132 148 143 142 153 Dec
Atari ST 86 84 94 8F 8E 99 Hex


214 212 232 201 200 205 Oct
Mac 140 138 154 129 128 133 Dec
8C 8A 9A 81 80 85 Hex


345 344 366 305 304 326 Oct
DEC 8-bit 229 228 246 197 196 214 Dec
E5 E4 F6 C5 C4 D6 Hex


145 144 166 105 104 126 Oct
DEC 7-bit 101 100 118 69 68 86 Dec
65 64 76 45 44 56 Hex


320 300 152 133 173 174 Oct
EBCDIC 208 192 106 91 123 124 Dec
D0 C0 6A 5B 7B 7C Hex
} { $ # @ Ebc


324 314 316 320 330 332 Oct
Roman-8 212 204 206 208 216 218 Dec
D4 CC CE D0 D8 DA Hex

Postscript å aring ä adieresis ö odieresis
Å Aring Ä Adieresis ö Odieresis


Taulukko harvemmin käytettyjen erikoismerkkien koodauksista eri
järjestelmissä


é ü É Ü

140 176 100 136 Oct
7-bit 96 126 64 94 Dec
60 7E 40 5E Hex
` ~ @ ^ Asc


Ansi 351 374 311 334 Oct
ISO 8859-1 233 252 201 220 Dec
Windows E9 FC C9 DC Hex
Amiga

202 201 220 232 Oct
PC 130 129 144 154 Dec
Atari ST 82 81 90 9A Hex


216 237 203 206 Oct
Mac 142 159 131 134 Dec
8E 9F 83 86 Hex


351 374 311 334 Oct
DEC 8-bit 233 252 201 220 Dec
E9 FC C9 DC Hex


151 174 111 134 Oct
DEC 7-bit 105 124 73 92 Dec
69 7C 49 5C Hex


171 241 340 Oct
EBCDIC 121 161 224 Dec
79 A1 E0 Hex
~ Ö Ebc



Rivinvaihtokoodit ja syötevirran loppukoodit

ASCII-koodit kymmenjärjestelmässä


Unix:
Rivinvaihto on yksinkertainen LF-merkki. (Asc 10)
Päätteeltä tulevan syöttövirran loppumerkki on yleensä ^D (Asc 4).

MS-DOS, CP/M:
Rivinvaihto koostuu CR LF -parista. (Asc 13 10)
Näppäimistöltä tulevan syöttövirran loppumerkki on ^Z (Asc 26).

VMS:
Rivinvaihto koostuu tiedostoformaatista riippuen CR LF -parista,
pelkästä CR:stä tai pelkästä LF:stä (Asc 13 10, 13, 10).
Päätteeltä tulevan syöttövirran loppumerkki on yleensä ^Z (Asc 26)

Apple Macintosh:
Rivinvaihto on CR-merkki. (Asc 13)

Amiga:
Rivinvaihto on yksinkertainen LF-merkki. (Asc 10)
Päätteeltä tulevan syöttövirran loppumerkki on yleensä ^\ (Asc 28).

VM/XA:
Virtuaaliset reikäkortit eivät tarvitse rivinvaihtoa ja tiedosto
päättyy kun korttipakkakin päättyy.


Yleisiä ongelmia


Aakkostus

Useat ohjelmat aakkostavat tekstin merkin numerokoodin mukaisesti.
Tämä toimii hyvin ASCII-koodiston kanssa niin kauan kun ei käytetä
skandinavisia merkkejä. Skandinaaviset merkit eivät aakkostu
yhdessäkään koodissa automaattisesti oikein.

Ei ole myöskään mahdollista suunnitella kansainvälistä merkistöä
jossa aakkostus tapahtuisi automaattisesti oikein, koska säännöt
vaihtelevat eri kielissä. Esimerkiksi saksan kielessä ä sijoittuu
samalle paikalle kuin a, kun taas meillä ä:llä on oma paikkansa.
Puhumattakaan espanjan hienouksista tai eri kielten tavasta ohittaa
etuliite nimiä aakkostettaessa.

Niinpä aakkostus on aina käsiteltävä erikoistapauksena. Parasta olisi
valmistautua aakkostukseen jo ohjelmointivaiheessa. Mikäli se ei ole
mahdollista, voi yrittää esim. suomalaisten merkkien korvaamista muilla,
oikein järjestäytyvillä merkeillä ennen aakkostusta ja sitten korvata
merkit takaisin päin aakkostuksen jälkeen (kömpelöä).


Sähköposti ja Newssit

Suomessa korkeakoulujen FUNET-verkossa sähköpostissa ja News-palvelussa
on nyt (kesä 1994) siirrytty 8-bittisiin ISO Latin-1 -merkkeihin.

Internetin sähköpostiin on olemassa MIME-niminen laajennus (Multipurpose
Internet Mail Extension), joka välittää 8-bittisiä sanomia 7-bittisessä
siirtoverkossa. MIME siirtää myös tiedon sanoman koodaukseen käytetystä
merkkivalikoimasta.

--
Timo Kiravuo, kir...@nixu.fi
http://www.nixu.fi/~kiravuo/
Helsinki, FINLAND

0 new messages