Gast
#3590241
Hallo, (Mods: Ggf. bitte verschieben). Ich habe mich hier im Forum schon mal an diesem Punkt blamiert, da sollte einmal mehr jetzt auch keine Rolle mehr spielen. :-) In diesem Beitrag Beitrag "Re: womit füllt atmel bit shift (>>) die neuen bits auf?" wird im Zusammenhang mit einer Schiebeoperation von Johann L. (gjlayde) folgende Aussage gemacht. > Es wird nur mit 8 Bits gerechnet, was allerdings der > C-Spezifikation entspricht, die ja eine Promotion auf > (unsigned) int vorschreibt. ... Ist das nicht ein Widerspruch? Ich meine, falls eine Promotion zu unsigned int stattgefunden hätte, dann müsste der Grund für die Berechnung mit 8Bit doch primär in der Optimierung zu sehen sein, oder? Anders ausgedrückt, durch Promotion kann doch nur mindestens ein int oder unsigned int entstehen und kein 8Bit. Die 8 Bit entstehen dann doch durch die Optimierung. Noch anders ausgedrückt, müsste der linke Operand (der Schiebeoperation) ein uint8_t ist, müsste doch erstmal eine Integer Promotion vorkommen, auch wenn die wieder wegoptimiert wird.