-
Data: 2012-05-30 09:24:03
Temat: Re: Obsługa peryferiów poprzez API (wskazniki do struktury)
Od: "Artur M. Piwko" <m...@b...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]In the darkest hour on Mon, 28 May 2012 11:14:04 -0700 (PDT),
slawek7 <s...@w...pl> screamed:
>> Jeżeli zrobisz podobną operację, ale w postaci:
>> (*(uint8_t*)0x40010C10)=0x0f;
>> to pod ten sam adres zapiszesz tylko pojedynczy bajt, pozostawiając
>> pozostałe trzy bajty 32-bitowego słowa zapisanego pod adresem 0x40010C10
>> bez zmian.
>
> Chyba rozumiem. Bo czy to znaczy że jeśli jakiś rejestr 32 bitowy ma
> możliwość zapisania go wartością 16 bitowa bo tak podaje dokumentacja
> to chcąc dokonać takiego zapisu liczbą 16 bitową używam rzutowania 16
> bitowego w postaci (*(uint16_t*)0x40010C10)=0x1234;
> Natomiast jeśli rejestr musi byc zapisany tylko wartością 32 bitowa bo
> tak każe dokumentacja to u zywam (*(uint32_t*)0x40010C10)=0x12345678;
>
> Ale mam wątpliwość, czy czasem to rzutowanie nie oznacza tylko
> arytmetyki wskaźników? Tzn za następny wskazywany obszar bęzie większy
> albo o 2 bajty albo o 4, jak w przypadku zwykłej arytmetyki wskaźników
Nie ma tu arytmetyki sensu strice.
> np
> uint16_t *ptr; // wskaźnik na liczbę 16 bitową
> teraz zwiększamy adres o jeden ptr++; czyli tak naprawdę wskaźnik
> skacze o dwa a nie o jeden adres?
Wskaźnik skoczy o jeden adres zawsze (ale o 2 bajty).
--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:229B ]
[ 09:22:16 user up 13184 days, 21:17, 1 user, load average: 0.98, 0.10, 0.45 ]
Would you rather have a 5-inch hard or an 8-inch floppy?
Następne wpisy z tego wątku
- 30.05.12 09:21 Artur M. Piwko
- 30.05.12 10:41 RoMan Mandziejewicz
- 31.05.12 22:34 Grzegorz Niemirowski
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]