Hallo zusammen!
Ich lerne gerade für das Fach "Technische Informatik" an meiner Hochschule und hänge ein bisschen bei Bit-weisen logischen Operatoren, vor allem was die Fragestellung meines Profs angeht.
Eine Aufgabe lautet z.B. so:
Zum „Auf-Eins-Setzen“ bestimmter Bits in einem Register wird ein Bit-weiser logischer Operator mit einer entsprechend gewählten Konstante als zweitem Operanden verwendet.
Es ist eine Multiple-Choice Aufgabe mit den Möglichkeiten:
- AND - OR
- NAND - XOR
- NOR - XNOR
Die Folgeaufgabe lautet:
Der Inhalt des 32-Bit Registers $s0 soll im letzten Byte auf (FF)Hex gesetzt werden. Dazu wird als Hilfsregister $t0 verwendet und das Ergebnis soll nach $s1 geschrieben werden. (Hier keinen Assemblercode hinschreiben.) Vervollständigen Sie bitte die Darstellung und beschriften Sie die freien Linien mit dem logischen Operator und der richtigen binären Konstante.
Code:
$s0: 0111 0011 1111 0100 1100 1011 1100 1010
Das letzte Byte (in rot) soll also alles auf 1 gesetzt werden, also verodere ich mit:
Code:
0.................1111 1111
Das würde ja bedeuten, die Lösung zur ersten Aufgabe wäre das OR, richtig?
Eine Abwandlung dieser Aufgabe lautet:
Zum Ausmaskieren (also zum Nullen) bestimmter Bits in einem Register wird ein Bit-weiser logischer Operator mit einer entsprechend gewählten Konstante als zweitem Operanden verwendet.
mit der Folgeaufgabe:
Der Inhalt des 32-Bit Register $s0 soll im letzten Byte auf (00)Hex gesetzt werden. Dazu wird als Hilfsregister $t0 verwendet und das Ergebnis soll nach $s1 geschrieben werden. (Hier keinen Assemblercode hinschreiben.) Vervollständigen Sie bitte die Darstellung und beschriften Sie die freien Linien mit dem logischen Operator und der richtigen binären Konstante.
Code:
$s0: 0111 0011 1111 0100 1100 1011 1100 1010
Ich hätte jetzt gesagt "drehen wir es einfach um, da von 1 jetzt auf 0, also NOR", klappt nur nicht. Ich hab es auch mit den anderen versucht, ohne Erfolg. Irgendwie stehe ich gerade ziemlich auf dem Schlauch und bin jetzt nur noch verwirrt.
Wäre euch sehr verbunden, wenn ihr mir da aushelfen könntet.
LG
GL