-
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
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
- wzmacniacz mocy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
Najnowsze wątki
- 2025-06-22 Re: Czy Bodnar to prawny Makiawel? [Prawo "w likwidacji"]
- 2025-06-21 Sąd Najwyższy ukarał "karą porządkową" 3_000 PLN za protest wyborczy z "wulgaryzmami osobowymi"
- 2025-06-21 Gdzie kupowac aku?
- 2025-06-21 Listwa przypodłogowa pod kominek
- 2025-06-21 Czy warto miec wy....anego na sucho premiera?
- 2025-06-21 Warszawa => Analityk IT (projekty z obszaru telco) <=
- 2025-06-21 Warszawa => Operations Support Systems (OSS) Team Leader <=
- 2025-06-21 Warszawa => Scrum Master <=
- 2025-06-21 Warszawa => Senior Account Manager <=
- 2025-06-20 5w30 zamiast 0w30
- 2025-06-19 Klima i samodzielne uzupełnienie
- 2025-06-20 Upgrade z i7-6xxx
- 2025-06-19 Czy ołowiane perowsiki, drukowane na folii to był fake ?
- 2025-06-20 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-06-20 Gdynia => Sales Executive / KAM <=