bitfield v avr-gcc
Andrej Jancura
hw_aj@zoznam.sk
Pondělí Červen 16 19:01:14 CEST 2008
> Pricina pouzit pointer na bitfield je presne ten isty ako
> pricina pouzivat pointre na funkcie. Ak najdes argumenty na
> jedno, mas presne tie iste argumenty aj na to druhe.
>
> Pointa je v moznosti odovzdavat si polohu (prip. aj
> velkost) manipulovaneho bitu/pola z bitfieldu ako
> parameter, ci uz je to na dialku alebo priamo v programe.
No nie celkom. Pointer v C je priamo adresa do kodovej (pre funkcie) alebo
datovej (premenne) pamati. Pointer predany do ineho systemu (toto rozumiem
pod pojmom na dialku) Ti je nanic. Ked chces inemu systemu povedat, aby si
vykonal nejaku funkciu, tak mu to musis oznamit inac, ako predanim pointra.
Asi tu dochadza k nedorozumeniu pri vyraze pointer. Tebe ide skor o offset
bytu a bitu od zaciatku bitoveho pola. To len pre poriadok, nie ze by toto
vedelo C riesit priamo syntaxou/prostriedkami jazyka..
Pripadne by si chcel nieco, ako je bitova adresa priamo adresovatelnych
bitov v '51. No toto nie je vecou jazyka, ale architektury.
------------
Tiez si myslim, ze chce asi toto. To je deformacia z x51. Na AVR, pripadne
inych mcu si to musis napisat sam. Pretoze tam mas adresu bytu a cislo
pripadne skupinu bitov, ktore menis. Napisat si taku funkciu by nemal byt
problem. Potrebujes nasobenie a pricitanie, pripadne delenie modulo 8 a
zvysok.
A.
Další informace o konferenci Hw-list