Kodierung und Dekodierung von Zahlensystemen

  • Hallo Leute,
    ich mache ja eine Ausbildung zum Fachinformatiker, deswegen kann ich euch teilweise qualitativ hochwertige Tutorials zu solchen Geschichten bieten :)


    Also, heute zeige ich euch wie man die einzelnen Zahlensysteme umrechnet und wie sie eigentlich funktionieren.


    Welche Zahlensysteme behandele ich?

    • Dezimal
    • Dual
    • Hexadezimal

    Zuerst aber erstmal eine kurze Einleitung


    1. Dezimalsystem/Dual/Hexadezimal
    Das Dezimalsystem ist wohl das einfachste und allen bekannt :) Es ist das "normale" Zahlensystem also 0 1 2 3 ...
    Das Dualsystem ist auch relativ einfach. Es gibt nur 1 und 0(Also An und Aus) z.B. 1 = 0001
    Das Hexadezimalesystem wird unter uns Hackern auch sehr bekannt sein es setzt sich aus den Ziffern 0-9 und den Buchstaben A-F zusammen. Die Höchste einstellige Zahl im Hexadezimalensystem ist 15(F)


    2. Dual <-> Dezimal
    Vorweg sollte man wissen das die Dualen Zahlen von Rechts nach Links geschrieben werden.
    Die einzelnen stellen bei der Dualzahl haben verschiedene wertigkeiten, diese fängt mit 0 von Rechts an und wird jede weitere Stelle nach Links +1 und nach rechts -1.
    Die Formel für die umrechnung ist: (Ziffer * 2 ^ Stellenwert) + (Nächste_Ziffer * 2 ^ Stellenwert) + (Nächste_Ziffer * 2 ^ Stellenwert) + ... = Dezimalzahl


    Achtung: x * y^0 ist NICHT 0 sondern 1!


    Beispiel Dual in Dezimal:


    Verstanden?^^


    Falls du dich jetzt fragst wie du 16 berechnest, wir fügen einfach vorne die doppelte zahl von der voherigen zahl ein, in diesem Fall 16:

    Code
    1. Wertigkeit
    2. 16 8 4 2 1
    3. -----------------------------------------------
    4. Dezimal | Dual
    5. 0 | 0 0 0 0 0 | 0 + 0 + 0 + 0 + 0 = 0
    6. 1 | 0 0 0 0 1 | 0 + 0 + 0 + 0 + 1 = 1
    7. [...] | |
    8. 14 | 0 1 1 1 0 | 0 + 8 + 4 + 2 + 0 = 14
    9. 15 | 0 1 1 1 1 | 0 + 8 + 4 + 2 + 1 = 15
    10. 16 | 1 0 0 0 0 | 16 + 0 + 0 + 0 + 0 = 16


    Die Umrechnung von von Dezimal in Dual ist auch einfach, ich erkläre jetzt das restwertverfahren.
    Dazu wird die Dezimalzahl bzw. der rest immer durch 2 geteilt. wenn ein Rest bei der Division bleibt, wird eine 1 geschrieben, ansonsten 0.


    Beispiel:


    Einfach oder?^^



    3. Hexadezimal <-> Dezimal
    Das Hexadezimale Zahlensystem besteht aus 16 verschiedenen Zeichen und sollte unter uns Hackern sehr bekannt sein^^:


    Dezimal zu Hex:
    Die Formel für die Berechnung der Teilziffern lautet:


    Die Hexadezimalen zahlen werden nun von unten nach oben aneinander gereiht und das ist dann das Hex ergebnis.


    Hex zu Dezimal:
    Die umrechnung von Hex nach Dezimal ist auch recht einfach. Die Formel hierzu lautet(fast wie bei der Dual2Dezimal):
    (Ziffer * 16 ^ Stellenwert) + (Nächste_Ziffer * 16 ^ Stellenwert) + (Nächste_Ziffer * 16 ^ Stellenwert) + ... = Dezimalzahl


    So, ich hoffe ich habe es verständlich genug geschrieben und nichts vergessen^^ bei fragen/anregungen könnt ihr mir gerne schreiben


    Gruß,
    Julian

    Ich bin nicht vergesslich, in meinem Hirn werden nur Pointer zu den Leuten angelegt, auf die ich dann nur zurück greifen muss um die Information zu erlangen :)

    3 Mal editiert, zuletzt von Devtronic ()

  • Schönes Tutorial, auch wenn es "bloß" die absoluten Grundlagen behandelt. Hilfreich ist es bestimmt :).
    Was mir persönlich fehlt: Das Verständnis, dass alle Positionssysteme gleich funktionieren. Wenn man einmal verstanden hat, wie unser Dezimal-System funktioniert, versteht man auch alle anderen Positionssysteme.


    Lg, Alen

  • Ganz ordentlich Alles in Allem, jedoch hast du einen kleinen Fehler eingebracht:



    Zunächst einmal hast du hier 2 Fehler gemacht:

    • Du hast hier die Potenz falsch erstellt, es müsste 2^3, 2^2, 2^1, und 2^0 heißen, also 8, 4, 2, und 1.
    • Als zweites: 1 * 0^2 = 1 * 0 = 0


    Aber wie gesagt, einfach ausbessern und nicht allzu Ernst nehmen,
    das ist wirklich ordentlich erklärt.


    Kleine Idee:
    Wie wärs damit, wenn du noch einmal grundsätzlich die Idee hinter dem Hin- und Herrechnen erklärst,
    vonwegen [Wert] * [Anzahl der Zustände] ^ [Stelle], und das mit dem Rest ;)


    mfg,
    haefele

  • mist, ist mir doch ein kleiner fehler reingekommen... hehe,
    aber 1 * 2^0 ist = 1 Google


    haefele schrieb:


    Kleine Idee:
    Wie wärs damit, wenn du noch einmal grundsätzlich die Idee hinter dem Hin- und Herrechnen erklärst,
    vonwegen [Wert] * [Anzahl der Zustände] ^ [Stelle], und das mit dem Rest ;)


    Jup, könnt ich noch nachträglich schreiben


    Danke für das Lob :)


    Gruß,
    Julian

    Ich bin nicht vergesslich, in meinem Hirn werden nur Pointer zu den Leuten angelegt, auf die ich dann nur zurück greifen muss um die Information zu erlangen :)