Jens Kallup <
kallu...@web.de>:
>nur mal so für mein Verständnis:
>
>
>kann ich eine beliebige Zahl bilden, die über die Bus-Breite
>reicht ?
>
>mal angenommen ich habe 2 hex zahlen:
>
>
>09 und 09 = 0909
>
>dann bedeutet doch, dass das letzte Element einen Wert von
>0..255 - 00..ff einsetzen kann
>
> ff = 255
>0100 = 256
>0102 = 257
>...
>0100 = 1 * 255
0100 = 1 * 256
>01ff = 1 * 255 + 255
01ff = 1 * 256 + 255
>
>0200 = 2 * 255
0200 = 2 * 256
>02ff = 2 * 255 + 255
02ff = 2 * 256 + 255
>
>0300 = 3 * 255
0300 = 3 * 256
>03ff = 3 * 255 + 255
03ff = 3 * 256 + 255
>...
>
>ff00 = 255 * 255 + 0
ff00 = 255 * 256 + 0
>ff01 = 255 * 255 + 1
ff01 = 255 * 256 + 1
>...
>
>ffff = 255 * 255 + 255
ffff = 255 * 256 + 255
>...
>
>nun zum gucken:
>
>ff ff ff 00 = 255 * 255 * 255 + 0
ff ff ff 00 = 255 * 256 ^ 3 + 255 * 256 ^ 2 + 255 * 256 ^ 1 + 0
>ff ff ff 01 = 255 * 255 * 255 + 1
ff ff ff 01 = 255 * 256 ^ 3 + 255 * 256 ^ 2 + 255 * 256 ^ 1 + 1
>...
>
>wie man sehen kann, ist ein Pattern zu erkennen.
>
Wo?
>Kann man dieses Muster irgendwie dazu verwenden,
>um Zahlen, unabhängig von der CPU Bus-Breite
>anwenden ?
Wo ist hier irgend etwas von einer Bus‐Breite zu sehen?
>Also in der Art, das man 2 Bytes zusammen nimmt
>bzw. gruppiert:
>
>ff ff = 255 * 255 <- a
ff ff = 255 * 256 + 255 <- a
>ff ff = 255 * 255 <- b
ff ff = 255 * 256 + 255 <- b
Zahlen mit den Ziffern 0, 1, 2, …, 8, 9, a, b, c, d, e und f sind
Zahlen im 16er‐System, auch Sedezimal‐ oder Hexadezimal‐System
genannt. Sie funktionieren im Prinzip wie Zahlen im Zehnersystem,
haben als Basis aber 16 statt 10.
Wenn man im 10er‐System, bei der Einerstelle beginnend, nach links
fortfahrend, je 2 Ziffern zusammenfasst, erhält man das
100er‐System, denn 100 = 10^2. Ein Beispiel:
Die Zahl 4711 im 10er‐System bedeutet
4 7 1 1 = 4*10^3+7*10^2+1*10^+1*10^0 = 4711
Wenn man je 2 Ziffern zusammenfasst, erhält man
47 11 = (4*10+7)*100^1+(1*10+1)*100^0 = 4711
Entsprechend funktioniert das 16er‐System:
3 a 9 c = 3*16^3+10*16^2+9*16^1+12 = 15004
Fasst man je zwei Ziffern zusammen, erhält man das 256er‐System,
denn 256 = 16^2:
3a 9c = (3*16+10)*256^1+(9*16+12)*256^0 = 15004
Ich habe den Eindruck, dir ist bisher nicht ganz klar, wie ein
Stellenwertsystem funktioniert.
Schau dir dazu im Wikipedia den Artikel «Stellenwertsystem»
(<
https://de.wikipedia.org/wiki/Stellenwertsystem#top>) an. Dann
brauche ich ihn hier nicht abzutippen.
Falls du nach der Lektüre des Wikipedia‐Artikels Fragen hast,
zitiere die unklaren Stellen und stelle die Frage.
Wenn das dann geklärt ist, kann man die Frage nach der Bus‐Breite
stellen.