matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenUni-SonstigesBinär -> Hexadezimalsystem
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Philosophie • Religion • Kunst • Musik • Sport • Pädagogik
Forum "Uni-Sonstiges" - Binär -> Hexadezimalsystem
Binär -> Hexadezimalsystem < Sonstiges < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Binär -> Hexadezimalsystem: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:35 So 01.09.2019
Autor: volk

Hallo,

ich bin gerade bei der Umwandlung einer Binärzahl (unsigned char 8 Bit) in eine Hexadezimalzahl über folgende Umwandlung nur mit Hilfe von Bit-Operationen gestolpert:

Die Zahl sei [mm] (72)_{10}=(1001000)_{2} [/mm]

Die beiden Bits der Hexadezimalzahl wurden wie folgt bestimmt:

High-Bit : 1001000 >> 4 = [mm] (100)_{2}=(4) [/mm]
Low-Bit: 1001000 & 1111 = [mm] (1000)_{2}=(8) [/mm]

Das macht [mm] (48)_{16} [/mm]

Meine Frage hierzu ist die folgende: das der Verschiebeoperator eine ganzzahlige Division darstellt, ist mir bewusst. Das der Und-Operator zur Modulo-Berechnung benutzt werden kann, allerdings nicht. Auch ist mir nicht bewusst, wieso [mm] (1111)_{2}=(15)_{10} [/mm] statt [mm] (10000)_{2}=(16)_{10} [/mm] benutzt wird.

Viele Grüße
volk

        
Bezug
Binär -> Hexadezimalsystem: Antwort
Status: (Antwort) fertig Status 
Datum: 12:57 So 01.09.2019
Autor: chrisno

mit dem und-Operator werden die führenden Bits beseitigt und die letzten Bits erhalten.
Ich schreibe mal die Operation als & 00001111.
Jede Null im der Zeichenkette sorgt dafür, dass das Zeichen ignoriert wird, jede Eins dafür, dass das vorhandene Zeichen auch erhalten bleibt.
Bestimme das Ergebnis von
1001000
& 10000
Da kommt nichts brauchbares heraus. Hingegen
  1001000
& 0001111
= 0001000


Bezug
                
Bezug
Binär -> Hexadezimalsystem: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 13:43 So 01.09.2019
Autor: volk

Hallo chrisno,
vielen Dank für deine schnelle Antwort.
Dieses Verfahren funktioniert dann aber nur, so wie ich das sehe, wenn der Divisor eine Zweierpotenz ist, oder? Wie geht man in allen anderen Fällen vor?

Bezug
                        
Bezug
Binär -> Hexadezimalsystem: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 17:28 So 01.09.2019
Autor: chrisno

Davon habe ich keine Ahnung.
Letzlich kann man immer den normalen Algorithmus, wie bei der schriftlichen Division durchführen.

Bezug
                        
Bezug
Binär -> Hexadezimalsystem: Antwort
Status: (Antwort) fertig Status 
Datum: 19:26 So 01.09.2019
Autor: HJKweseleit

Es geht dir ja darum, eine Binär- in eine Hexadezimal-Zahl umzuwandeln.

Nehmen wir zunächst ein anderes Beispiel: Du möchtest die Zahl [mm] N=(347)_{10}, [/mm] die, aber - sagen wir mal - im 3-er-System codiert ist, in seine Dezimalziffern (auch im Dreiersystem codiert) zerlegen. Dann könntest du das so programmieren:

Einerziffer a ermitteln durch a = N mod 10 = 7.
Nun ziehst du von N das a ab: [mm] N'=(340)_{10} [/mm]
Dann dividierst du N' durch 10: N''= [mm] (34)_{10} [/mm]

Zehnerziffer b=4 ermitteln, indem du nun mit N'' dasselbe machst wir oben mit N usw.

Dabei spielt es keine Rolle, ob die Zahl im 3-er-, 2-er-, 10-er- oder 16-er-System codiert ist. Du erhältst immer die so codierten Ziffern für das 10-er-System.

Der Unterschied zur Kombination Binär-Hexadezimal-System besteht aber nun in Folgendem:

Zunächst mal hat das Hexadezimalsystem nicht die 10 Ziffern 0 bis 9, sondern 0 bis 15, wobei man für 10-15 weitere Zeichen braucht und die Buchstaben A-F benutzt.
Nach [mm] F=(15)_{10} [/mm] kommt dann [mm] (10)_{16}=(16)_{10}. [/mm]

Die Ziffern [mm] (0)_{16} [/mm] bis [mm] (F)_{16} [/mm] sehen aber im Binärsystem so aus: [mm] (0000)_{2} [/mm] bis [mm] (1111)_{2}. [/mm] Danach kommt im Hexadezimalsystem die [mm] (10)_{16} [/mm] = [mm] (10000)_{2} [/mm] im Binärsystem.
Somit entspricht die letzte Ziffer im Hexadezimalsystem genau dem Wert der letzten 4 Ziffern im Binärsystem!!!
Wie in obigem Rechenbeispiel gezeigt, ziehst du die nun von der bisherigen Zahl im Binärsystem ab, so dass die letzten 4 Ziffern alles Nullen werden. Dann Dividierst du durch 16, und das entspricht im Binärsystem genau dem Rechtsshiften um 4 Stellen. (Da im Computer beim Rechtsshiften die letzten Stellen einfach wegfallen, kannst du auf das Abziehen und Dividieren verzichten, und genau das macht die Sache so effektiv!)

Fazit: Weil [mm] 2^4=16 [/mm] ist, entsprechen die vierer-Zahlenblöcke im Binärsystem - von hinten eingeteilt - genau den Ziffern im Hexadezimalsystem.

Würdest du Ziffern im 32-er-System bilden wollen, müsstest du die Binärzahl von hinten nur immer in 5-er-Blöcke zerlegen. Zahlen des 3-er-Systems, immer von hinten in Dreierblöcke zerlegt, würden die ziffern des 27-er-Systems ergeben usw.

Wolltest du aber Binärzahlen im 7-er-System darstellen, könntest du die Ziffern nicht mehr durch Blockbildung bekommen!

Bezug
                                
Bezug
Binär -> Hexadezimalsystem: 256-Ziffern Darstellung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 18:53 Sa 14.09.2019
Autor: vlado77

Bei Digitalspeicherung, wo die Reihen von 8 Bits in die Bytes gruppiert werden, kann die ganze Zahl auch durch eine Reihe der Zeichen einer 256-Element-Menge dargestellt werden, deren Elemente die Ziffern der Werte 0 bis 255 repräsentieren und schriftlich durch alphanumerische, Interpunktions-, Kontroll-, Geldzeichen, nichtenglische Buchstaben oder andere Zeichen unterschieden werden.
Dabei schreibt man z. B. die 65-Wert-Ziffer mit das große A, das kleine a steht für die 97-Wert-Ziffer, die B stehen für die 66- und 98-Wert-Ziffern, das Zeichen @ für die 64-Wert-Ziffer, die geschriebene Ziffern 0 bis 9 für die Werte 48 bis 57, das große französische Ç für 128, das kleine deutsche ü für 129 usw.



Beispiele:

a) CD = C ⋅ 256 + D = 67 ⋅ 256 + 68 = 17220

b) A0Ça =
   A ⋅ 256⋅256⋅256 + 0 ⋅ 256⋅256 + Ç ⋅ 256 + a =
   65 ⋅ 256⋅256⋅256 + 48 ⋅ 256⋅256 + 128 ⋅ 256 + 97 =
   1093697633

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]