ASCII Zeichensatz

Persönliche Seite #4098216
Lesenswert?

Windows verwendet durchaus unterschiedliche Codepages in Abhängigkeit 
von der Spracheinstellung.

Die meisten "westlichen" Sprachen verwenden CP1251, was weitestgehend 
IS8859-1 entspricht. Wählt man aber Sprachen mit stark abweichenden 
Zeichenbedarf, wie z.B. polnisch oder gar Sprachen mit nichlateinischen 
Schriftsystemen (griechisch, russisch, georgisch etc.), dann wird eine 
andere Codepage genutzt.

Die Codepage ist aber nur relevant für Programme, die intern mit 
8-Bit-Zeichensätzen arbeiten; Windows selbst arbeitet mit 
16-Bit-Unicode, und viele neuere Programme verwenden UTF-8, so daß hier 
keine Codepage nötig ist.

Im von vielen Leuten hartnäckig falsch "DOS-Fenster" genannten 
Kommandozeilenfenster verwendet Windows auf "westlichen" Systemen eine 
komplett andere Codepage, und zwar eine, die den Zeichensatz des alten 
IBM PC nachbildet. Das ist CP437 bzw. leicht variiert CP850. Programme, 
die als Konsolanwendungen laufen, können die verwendete Codepage auch 
umschalten (mit SetConsoleOutputCP), aber das hat nur dann eine 
sinnvolle Auswirkung, wenn im Konsolenfenster eine geeignete Schriftart 
verwendet wird. Die standardmäßig aktiven Pixelfonts kennen nur eine 
Codepage und können daher Sonderzeichen aus anderen Codepages nicht 
darstellen. Als Schrifteinstellung für Konsolenfenster empfiehlt sich 
daher "Consoloas" oder "Lucida Console" - das sind Truetype-Fonts, die 
beliebige Codepages darstellen können.


Der ASCII-Code übrigens ist immer der gleiche - die ersten 127 Zeichen 
aller Codepages und sonstigen Zeichencodierungssysteme sind i.d.R. 
identisch.
Gast #4098258
Lesenswert?

Pit schrieb:
> haben die ASCII Zeichen (0 bis 255)
ASCII geht nur von 0 bis 127. Alles was danach kommt ist der "erweiterte 
ASCII"-Zeichensatz und ist Regions abhaengig. So wirst du hier in D mit 
dem ASCII-Code 200 ein anderes Zeichen arhalten als in der Tuerkei, oder 
in Israel, oder in Spanien oder in Russland.
Gast #4098344
Lesenswert?

Ich habe jetzt auch noch mal nachgelesen, und ihr habt mal wieder recht!

1. ASCII von 0 bis 127 ist immer gleich.
2. Wenn man UTF8 nimmt ist man auf der sicheren Seite - wobei UTF8 im 
Bereich 0 bis 127 dem ASCII entspricht.
3. Google hilft weiter
4. Goto 1

Danke und Gruß
Pit
Persönliche Seite #4099158
Lesenswert?

Jens G. schrieb:
> Oder mit "chcp <codepage>" in der Session die CP umschalten.

Kann man auch machen, oder
1
mode con cp select=<codepage>

Eleganter ist es aber, das in der Anwendung selbst zu machen, die 
nämlich weiß, was sie ausgeben will.

An der Einschränkung durch die verwendete Schriftart ändert das aber 
nichts. "Rasterschriftart" ist nur für Codepage 850 bzw. mit kleinen 
Einschränkungen 437 verwendbar.
Gast #4099408
Lesenswert?

Rufus Τ. Firefly schrieb:
> "Rasterschriftart" ist nur für Codepage 850 bzw. mit kleinen
> Einschränkungen 437 verwendbar.

Und die armen Schweine im Rest der Welt haben keine Rasterschriften? Ich 
habe für meine Steuerungen eine kyrillische Rasterschrift zur Verfügung 
gestellt, weil Russen das lieber lesen. Die Welt ist grösser und 
vielfältiger als so mancher sich das vorstellen kann.

Georg
#4099565
Lesenswert?

Die ganze Computer Technologie, resp die ersten Implementation fanden 
eben im Sprachraum mit lateinischen Buchstaben statt. Wir koennen froh 
sein, denn sie haetten koennen, resp in der Zukunft werden sein koennen 
auch auch in Japanischer oder Chinesischer Schrift sein. Und da kommt 
eben mehr als nur die Zeichen mit. Auch die Denkweise. Anstelle von 
"Enter" und "Cancel" koennten die Buttons auch "Mach mal weiter" und 
"Jetzt grad nicht" heissen, und auch dss bedeuten.

Das laeuft dann unter Alphabet-Imperialismus ... :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren