Arduino - 32 bitu promenna ze 4 byte

Jirka Mww jirka.mww na gmail.com
Středa Prosinec 18 09:00:53 CET 2024


Uloženo to nemám, ale psalo to něco jako  že posouvat 8 bitové hodnoty o 24
nebo 16 bitů se nemá .

Zdravi
Jirka Sloupenský  OK1MWW


st 18. 12. 2024 v 6:22 odesílatel Jaroslav Buchta <
jaroslav.buchta na hascomp.cz> napsal:

> Jake warningy nemate ulozeno? Kdyz se to spravne napise, neni k tomu snad
> duvod...
> Dne 17.12.2024 v 23:51 Jirka Mww napsal(a):
>
> Já jsem nakonec zůstal u toho postupného posunu o 8 bitů.  Posun o 24 , 16
> a 8 bitů sice funguje, ale překladač  hlásí warningy.
> Díky všem za produktivní diskusi, dost jsem se zase dozvěděl.   C++
> programátor ze mne už opravdu nebude.
>
> Zdravi
> Jirka Sloupenský  OK1MWW
>
>
> út 17. 12. 2024 v 16:28 odesílatel Jan Waclawek <konfera na efton.sk> napsal:
>
>> Co je to "spravne"?
>>
>> Z pohladu "funkcnosti" to je "spravne". C99 6.4.4.1 Integer constants
>> hovori, ze typ konstanty je dany prvym typom z nasledovnej tabulky, do
>> ktorej konstanta "vojde". A tabulka pre sestnastkovu konstantu je:
>> int
>> unsigned int
>> long int
>> unsigned long int
>> long long int
>> unsigned long long int
>>
>> No a v avr-gcc prvym typom z tabulky do ktoreho vojde 0xFFEF1000 je
>> unsigned long int (= uint32_t pre pripad toho avr-gcc).
>>
>> A tiez je to "spravne", lebo je to priame priradenie (no dobre,
>> inicializator, ale funguje ako priradenie), t.j. nie je to vyraz a
>> prebehne tam len pomerne priamociara konverzia.
>>
>> Z metodickeho pohladu to nie je "spravne", lebo je lahke sa pomylit (a
>> zabudnut na ten suffix ked je ta konstanta pouzita vo vyraze, kde
>> konverzie sposobia necakany vysledok, alebo kebyze ma najvyssi bit nulovy
>> cim sa stane znamienkova a je pouzita v nejakom vyraze kde ta
>> znamienkovost zmeni vysledok), a preto je lepsie ten suffix vzdy
>> explicitne napisat.
>>
>> wek
>>
>>
>> ----- Original Message ---------------
>>
>> >[preposielam]
>> >
>> >Ahoj,
>> >
>> >myslim, ze nie, pretoze definujem vsetky 4 byty premennej. Potrebne by to
>> >bolo, keby som definoval len 1, 2 alebo 3 byty. Ale isty som si moc nie.
>> >A.
>> >>>>
>> >
>> >neměl by ten zápis správně být jako
>> >unsigned long int Delay=0xFFEF1000ul;   ?
>> >
>> >MB
>> >
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.czHw-list na list.hw.czhttp://list.hw.cz/mailman/listinfo/hw-list
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20241218/04fa5bda/attachment.htm>


Další informace o konferenci Hw-list