[elektro] C aritmetika?

hg12345 hg12345 at freemail.hu
Wed Apr 7 00:40:12 CEST 2010


Hi! Az MSC forditó :-) long == int igy tényleg nem volt egy nagy probléma számára. 

Palasik Sandor <palasik at mail.datanet.hu> írta:
>> Bocs nem értek veled egyet, a nyelvnek ezt részét sehogyan se
>> definiálták :-( ez mindig az adott megvalósítás függő!
>
>Szerintem pedig pontosan definiálták. Minden artitmetikai művelet 
>precizitását az operandusai határozzák meg és csak a művelet elvégzése után 
>konvertál az eredmény típusra, ha az más. Esetleg figyelmeztet, ha 
>veszítessz a pontosságból, de nem trükköz.
>
>Az lehet, hogy mondjuk egy a*(long)b szorzásnál rájön, hogy az eredményt 
>elég egy rendes integer szorzás után longgá alakítani, ezt ki kell próbálni. 
>Pl. a 16 bites MS C fordító (C8.00) rájön, hogy ez a helyzet.
>
>a
>  c = a*(long)b;
>vagy
>  c = (long)a*b;
>
>utasítás így fordul:
>
> mov     ax,WORD PTR _b
> imul    WORD PTR _a
> mov     WORD PTR _c,ax
> mov     WORD PTR _c+2,dx
>
>Palasik Sándor
>
>-----------------------------------------
>          elektro[-flame|-etc]


More information about the Elektro mailing list