RISC-V Linksverschiebung?
Hey, also ich habe folgenden Befehl in RISC-V: sll t0, s1, s1. Dieser verschiebt ja s1 um die unteren 5 Bits von s1 als Verschiebungswert.
wenn in Register s1 nun 0x13d steht. Müsste es ja also um 13d = 100111101, davon die 5 unteren Bits 11101 = 35 Stellen verschieben. In den Lösungen wird angeben in t0 steht nun der Wert 0xa0000000. Wie kommt man auf diesen?
Gruß
1 Antwort
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Informatik
Ich finde nur ein SLLI:
slli rd,rs1,shamt
Performs logical left shift on the value in register rs1 by the shift amount held in the lower 5 bits of the immediate
In RV64, bit-25 is used to shamt
----
wenn in Register s1 nun 0x13d
0x01 3d = 00000001 0011 1101, also: 1 1101 (=29) Stellen nach links shiften.
1010 0000 0000 0000 0000 0000 0000 0000
^^^^^Das hier ist zweifelsohne eine 10, also 0xA... .