-
Data: 2009-10-16 11:24:37
Temat: Re: Dlaczego ATmega128 przek?amuje?
Od: cepu69 <c...@t...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]T.M.F. wrote:
> W dniu 15.10.2009 20:11, MiSTER pisze:
>>> Cos sie zapetliles, to w koncu te pola bitowe sa rozmieszczane dowolnie
>>> czy nie?
>>> IMHO kompilator rozmieszcza je w kolejnosci w jakiej sa zdefiniowane - w
>>> koncu to struktura, a elementy struktury wystepuja w kolejnosci zgodnej
>>> z definicja.
>>
>> Nie zaleca si? korzysta? z p?l bitowych je?eli soft ma by? kompilowany
>> pod
>> r?nymi platformami gdy? standard NIE DEFINIUJE kolejno?ci przypisania
>> bit?w.
>>
To kompilator ustala kolejnosc bitwo we bajcie, np GCC vs propriety
compiler:
typedef union {
unsigned short word;
#ifndef __GNUC__
struct
{
unsigned short :1; /* reserved */
unsigned short CodeAssertLine :13;
unsigned short EventOverflowTrigger :1;
unsigned short EventCodeAssertTrigger :1;
} bit;
#else
struct
{
unsigned short EventCodeAssertTrigger :1;
unsigned short EventOverflowTrigger :1;
unsigned short CodeAssertLine :13;
unsigned short :1; /* reserved */
} bit;
#endif
aczkolwiek GCC dostarcza makra __BIG_ENDIAN_BITFIELD oraz
__LITTLE_ENDIAN_BITFIELD informujace o ukladzie bitow w slowie
struct atapi_mechstat_header {
#if defined(__BIG_ENDIAN_BITFIELD)
__u8 fault : 1;
__u8 changer_state : 2;
__u8 curslot : 5;
#elif defined(__LITTLE_ENDIAN_BITFIELD)
__u8 curslot : 5;
__u8 changer_state : 2;
__u8 fault : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
#if defined(__BIG_ENDIAN_BITFIELD)
__u8 mech_state : 3;
__u8 door_open : 1;
__u8 reserved1 : 4;
#elif defined(__LITTLE_ENDIAN_BITFIELD)
__u8 reserved1 : 4;
__u8 door_open : 1;
__u8 mech_state : 3;
#else
#error "Please fix <asm/byteorder.h>"
#endif
byte curlba[3];
byte nslots;
__u8 short slot_tablelen;
};
>
> Ale to jak sadze jest raczej kwestia big/little-endian.
Nie endian mowi o kolejnosi bajtow w slowie :
http://pl.wikipedia.org/wiki/Kolejność_bajtów
> Dla programu nie ma to znaczenia - o ile wlasnie nie przenosze pomiedzy
> architekturami danych wygenerowanych na innej. Bo w samym programie
> odwolanie do pola struktury zawsze bedzie jednoznaczne.
Oczywiscie dopoki nie jest to unia i odwolujesz sie do niej zarowno przez
pola bitowe jak i slowa ;)
Następne wpisy z tego wątku
- 16.10.09 11:32 T.M.F.
- 16.10.09 11:40 T.M.F.
- 16.10.09 11:58 Piotr Gałka
- 16.10.09 12:49 T.M.F.
- 16.10.09 14:22 Konop
- 16.10.09 14:24 Piotr Gałka
- 16.10.09 14:39 Piotr Gałka
- 16.10.09 15:22 T.M.F.
- 16.10.09 15:31 Ghost
- 16.10.09 15:33 Piotr Gałka
- 16.10.09 20:12 ELP
- 16.10.09 21:08 Ghost
- 16.10.09 21:26 Konop
- 17.10.09 10:25 T.M.F.
- 17.10.09 22:50 Adam Dybkowski
Najnowsze wątki z tej grupy
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
- Skąd diody LED 1,5V?
- Apollo Comm
- PICkit3 mnie pokonał
- LEDy na choinkę zdechły
- Wtopa LED
- Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- Microsoft, C/C++ na Rust - news
- Pierwsza mapa kosmosu w 102 długościach fal podczerwieni! To początek nowej ery w astronomii
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- zasilacz
- Zegary DCF
Najnowsze wątki
- 2026-01-09 EKOFASZYŚCI DO NAUKI Chiny odpaliły reaktor na tor. Zachód przespał ten moment? - AstroSzort
- 2026-01-09 Sebastian M
- 2026-01-09 weto nowelizacji ustawy o ś.u.d.e. (wz. DSA)
- 2026-01-09 Warszawa => Dynamics 365 Commerce/POS Developer <=
- 2026-01-09 Ładowanie w 13 minut
- 2026-01-08 Umiejętność tankowania na egzaminie z prawa jazdy
- 2026-01-08 Nowy akumulator Donut Lab
- 2026-01-08 Komenda policji nie ma nic wspólnego ze sprawą zgwałcenia policjantki
- 2026-01-08 Pilot do zamka/bramy
- 2026-01-08 Ślad węglowy
- 2026-01-08 Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- 2026-01-08 Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- 2026-01-08 Agora zwalnia grupowo, mimo że w firmie pojawiły się zyski, czyli załoga zapracowała na siebie
- 2026-01-08 Agora zwalnia grupowo, mimo że w firmie pojawiły się zyski, czyli załoga zapracowała na siebie
- 2026-01-08 Dlaczego wrzucenie szkolnego krzyża do śmieci to zbrodnia mniejsza od zgaszenia sejmowej menory?




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]