[elektro] PIC C32 shift right
SZIGETI Szabolcs
szigiszabolcs at gmail.com
Thu Jan 17 09:40:56 CET 2013
Hali!
Nem rossz, hanem a C szabvány szerint a jobb shift nem definiált pontosan.
Lehet aritmetikai vagy logikai csak egy azon fordítón belül konzisztensen
kell működnie. Általában persze logikusan működik, de (főleg ha a hardver
olyan), akkor teljesen legális az előjeles számokat előjel nélkül shiftelni
jobbra.
Szabolcs
2013. január 17. 9:29 Info írta, <info at kiralyelektronika.hu>:
> Szia!
>
> > 1980-ban még 8080-al kezdtem.
> > Akkor még a C csak kiváltságosoknak jutott.
> Ok, akkor nem ez a gond :)
>
> > Na de a bajom az volt, hogy C18 és C32 teljesen másképp működik a jobbra
> > shiftelésnél előjeles változóval.
> Akkor a gond az, hogy rossz a fordító.
> Az humbug szerintem, hogy másképp is kell működnie, mivel nyelvi
> alapon mint számot mindíg az előjelével kell kezelnie, unsignednél
> ezért mindíg 0-nak kellene bejönnie.
> Matek alapon a bittologatás osztás/szorzás, és ennek megfelelően kell
> implementálnia a c compilernek. Szal az bug nem feature :)
>
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list