Witam,
jak waszym zdaniem najefektowniej z liczby (dajny na to 454857, binarnie 110 11110000 11001001 (3 bajty)) wyodrębnić poszczególne bajty.
Pytanie wynika stąd, że opracowuję komunikację, gdzie ramka danych składa się z konkretnej ilości bajtów, każda składowa informacja tej ramki zawiera się w pewnej określonej liczbie bajtów. Więc na przykład, jeśli odbiornik, przez UART odbierze 5 bajtów (np. 5 charów) to wie że pierwszy bajt jest adresem dwa kolejne są zadaniem do wykonania a reszta to CRC itp.
Myślałem nad przesunięciem bitowym, ale jeśli informacja będzie zawierała się w 4 bajtach to nie wiem czy przy przesunięciu bitowym o 32 kompilator nie będzie krzyczał o przepełnieniu. Ogólnie prosił bym o jakieś wskazówki czy porady.
Pozdrawiam.
jak waszym zdaniem najefektowniej z liczby (dajny na to 454857, binarnie 110 11110000 11001001 (3 bajty)) wyodrębnić poszczególne bajty.
Pytanie wynika stąd, że opracowuję komunikację, gdzie ramka danych składa się z konkretnej ilości bajtów, każda składowa informacja tej ramki zawiera się w pewnej określonej liczbie bajtów. Więc na przykład, jeśli odbiornik, przez UART odbierze 5 bajtów (np. 5 charów) to wie że pierwszy bajt jest adresem dwa kolejne są zadaniem do wykonania a reszta to CRC itp.
Myślałem nad przesunięciem bitowym, ale jeśli informacja będzie zawierała się w 4 bajtach to nie wiem czy przy przesunięciu bitowym o 32 kompilator nie będzie krzyczał o przepełnieniu. Ogólnie prosił bym o jakieś wskazówki czy porady.
Pozdrawiam.
