Lothar: Zahlzeichen

Beitrag lesen

Hallo Der Martin,

Nehmen wir an, ich habe in einer Variablen den Wert 2 gespeichert. Dann ist der numerische Wert 2 im Speicher hinterlegt. Es wird also nicht der Codepoint einer Kodierung für das Zahlzeichen 2 hinterlegt, sondern der abstrakte, numerische Wert 2.  Sehe ich das soweit richtig?

ja, wobei man hier schon einwenden müsste, dass es verschiedene Methoden gibt, den Zahlenwert 2 darzustellen.

int a = 2;
=> hier wird gespeichert, dass es sich um eine numerische Information handelt. Die numerische Wertigkeit dieser Information ist 2.

Nein. Ja.
Wenn wir von klassischen Compilersprachen wie etwa C ausgehen, dann wird keine Information über die Art der Information gespeichert; die ergibt sich daraus, wie die gespeicherte Information beim Auslesen interpretiert wird.

das verstehe ich noch nicht ganz. Oder eigentlich verstehe ich schon, aber mir fehlt noch der letzte Schritt zur Erkenntnis. Könntest du mir aufzeigen/erklären, wie in diesem Falle

a) der numerische Wert 2
und
b) das Zahlzeichen 2 gespeichert wird?

Ich möchte nun das Zeichen 2 drucken, d.h. auf dem Bildschirm ausgeben. Oder anders, ich möchte den Codepoint einer entsprechenden Kodierung des Zeichens 2 haben. Wie mache ich das am geschicktesten?

Indem du eine möglichst weit verbreitete Zuordnungsvorschrift verwendest, die einem bestimmten numerischen Wert ein Zeichen zuordnet. Der kleinste gemeinsame Nenner dieser Zuordnungsvorschriften ist vermutlich der ASCII-Code. Der ordnet beispielsweise den Zahlencodes 48..57 (hexadezimal: 0x30..0x39) die Ziffern 0..9 als druckbare Zeichen zu.

Hilft dir das schon weiter, oder möchtest du weiter ins Detail gehen?

Das hilft mir auf alle Fälle weiter. Ich denke, ich weiß jetzt, wie ich das angehen kann. Das Problem näher zu beschreiben, fällt mir etwas schwer. Ich denke, ich arbeite daran, und wenn ich nicht weiterkomme, melde ich mich nochmal.

Danke für deine Hilfe
Lothar