[elektro] C18 compiler v3.46 probléma
elight
elight at gmail.hu
Fri Jan 15 09:12:06 CET 2016
BOOCS!
Éppen nem a megfelelőt linkeltem, :-[
de azért itt válogathatsz is a nyelvek között:
http://nyelvek.inf.elte.hu/leirasok/
Üdv István
2016-01-15 09:01 keltezéssel, elight írta:
> Szia
>
> Próbáld meg konkrét (int) meghatározással
> vagy esetleg tagokra bontva:
>
> XXXX = 30;
> YYYY = 60;
>
> XXXX = XXXX*YYYY;
>
> vezethet eredményre , vagy kényszeríted a
> konstans típusát pl:
>
> XXXX = 30L * 60L; // ahol az L = long ; U = unsigned stb..
>
> ( ez szerintem nyelvi elem, nem fordító függő tulajdonság,
> a fordítóban /linker/ legfeljebb az alapértelmezési tartomány
> lehet konfigurált. )
>
> Itt is ( de bármelyik C könyvben ) vannak okosságok
> a típusokra és az automatikus típuskonverzióra is..
>
> http://nyelvek.inf.elte.hu/leirasok/D/index.php?chapter=3
>
> Üdv István
>
>
>
>
> 2016-01-15 03:54 keltezéssel, fi F írta:
>> Igen, valszeg. alapból 8 bites a konstans default?
>> De ezt hol lehet állítani c18-ban.
>>
>> -----Original Message-----
>> From: elektro-bounces at tesla.hu [mailto:elektro-bounces at tesla.hu] On Behalf
>> Of Pipi
>> Sent: Friday, January 15, 2016 12:22 AM
>> To: elektro at tesla.hu
>> Subject: Re: [elektro] C18 compiler v3.46 probléma
>>
>> első esetben egy bájton számol, és azt rakja 2 bájtba ?
>>
>> 2016.01.15. 00:13 keltezéssel, fi F írta:
>>> Sziasztok!
>>>
>>>
>>>
>>> Biztos igaza an a fordítónak, de nem értem miért!
>>>
>>> Ugye a 30 * 60 az 0x708, azaz 07 és 08 két byte-on.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> static int XXXX;
>>>
>>>
>>>
>>>
>>>
>>> **********************************************************
>>>
>>>
>>>
>>> XXXX = (30 * 60);
>>>
>>>
>>>
>>> erre meg ezt fordítja miért ??????:
>>>
>>>
>>>
>>> 0x470C: MOVLW 0x8
>>>
>>> 0x470E: MOVLB 0x5
>>>
>>> 0x4710: MOVWF 0xCB, BANKED
>>>
>>> 0x4712: CLRF 0xCC, BANKED ;????????? nem értem miért nulla
>>>
>>>
>>>
>>>
>>>
>>> **********************************************************
>>>
>>> XXXX = (30L * 60L);
>>>
>>>
>>>
>>> erre ezt fordítja helyesen:
>>>
>>>
>>>
>>> 0x470C: MOVLB 0x5
>>>
>>> 0x470E: MOVLW 0x8
>>>
>>> 0x4710: MOVWF 0xCB, BANKED
>>>
>>> 0x4712: MOVLW 0x7 ;!!!!!! így jó
>>>
>>> 0x4714: MOVWF 0xCC, BANKED
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> -----------------------------------------
>>> elektro[-flame|-etc]
>>>
>>>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list