8 Bit Eingabe um ein Bit erweitern

OP #4327413
Lesenswert?
• ▲
▼
Hallo zusammen,

ich muss mithilfe des IA-32 Assemblers aus einer Eingabe erkennen, ob 
diese eine gerade oder ungerade Anzahl an Einser-Bits hat (Stichwort: 
Paritätsbit). Das Problem hab ich soweit erstmal lösen können.

Das Paritätsbit soll aber nun an die Eingabe hinten drangehangen werden, 
damit insgesamt eine gerade Anzahl von Einsen rauskommt. Und hier komme 
ich nicht so richtig weiter... mir fehlt der Gedankengang, wie ich ein 
genau Bit einfach hinten dranhängen kann. Ich würde mich über einige 
Tipps freuen! :)

Vielen Dank im voraus!
#4327418
Lesenswert?
• ▲
▼
Wenn die Eingabe 8 Bit hat dann hat sie wohl immer eine gerade Anzahl an 
Bits weil 8 eben nunmal gerade ist! Oder meinst Du, Du möchtest die 
Anzahl der Bits auswerten, die "1" sind!?

Welchen Sinn hat es, aus 8 Bit 9 Bit zu machen wenn sich das 9. Bit sehr 
leicht aus den 8 vorhandenen Bits generieren lässt?
#4327420
Lesenswert?
• ▲
▼
@ Max W. (credl23)

>diese eine gerade oder ungerade Anzahl an Bits hat (Stichwort:
>Paritätsbit). Das Problem hab ich soweit erstmal lösen können.

Das macht man mit Schieben und XOR.

>Das Paritätsbit soll aber nun an die Eingabe hinten drangehangen werden,

Dazu musst du deine 8-Bit Daten erstmal in einer 16 Bit 
Variable/Register speichern und per Bitmanipulation das 9. Bit 
entsprechend setzen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.