Gast
#813629
Hallo, folgendes: uint8_t hallo; hallo=0; PORTB=hallo; PORTB=(hallo>>4); dann folgt als Ausgabe: 0 und eben 0b11110000; welches Befehl gibt es,der auch 0 dann lässt ( also Nullen nachschiebt) Gruß John
|
Anzeige
|
Mit welchem Befehlt shiftet man rechts ohne "Einsen"
Gast
#813629
Hallo, folgendes: uint8_t hallo; hallo=0; PORTB=hallo; PORTB=(hallo>>4); dann folgt als Ausgabe: 0 und eben 0b11110000; welches Befehl gibt es,der auch 0 dann lässt ( also Nullen nachschiebt) Gruß John
Gast
#813636
hä? Ergenis ist 00001111, und was hättest du gerne? Genau so, es sollten Nullen nachgeschoben werden. Wenn was anderes dabei rauskommt, ist das falsch. Mehr Info: Welcher Compiler? Compilierbarer Code mit ebendiesem Problem, nicht bloss 3 Zeilen.
Gast
#813664
.... kann es sein, dass Du char geschiftet hast - der war größer als 127 und wurde damit als signed erkannt und somit korrekt mit Einsen ergänzt! >Mit welchem Befehlt shiftet man rechts ohne "Einsen"
lsr ;-)
Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|