Der Martin: Zahlzeichen

Beitrag lesen

Hi,

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.

Wenn ich also auf dem Bildschirm das Zeichen 2 sehe, ist der Wert 2 im Prinzip nur die abstrakte Idee, oder besser, semantische Information hinter diesem. Das Zahlzeichen 2 selbst hat mit dem numerischen Wert 2 erstmal nicht das geringste zu tun. Das Zahlzeichen 2 könnte also auch den numerischen Wert 3 hinterlegt haben (ganz unabhängig von einer konkreten Implementierung, zum Beispiel als Entität in einer Testwelt). Gut, das ist jetzt ein bisschen sehr abstrakt, aber nur mal grundsätzlich. Liege ich hier noch ebenfalls richtig?

Ja, mit der abstrakten theoretischen Betrachtung auf jeden Fall.

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?

So long,
 Martin

--
Der Bäcker schlägt die Fliegen tot
Und macht daraus Rosinenbrot.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(