Otlet kellene - C macro

Bali Zoltan eltexto at r320.hu
Sat Mar 13 10:40:59 CET 2004


Hali !

>workaround fuggvennyel

Szeretnék felvilágosultabb lenni, elmagyaráznád
a fenti mibenlétét ?

Köszi   Zoli


----- Original Message -----
From: "Moczik Gabor" <progzmaster at freemail.hu>
To: <elektro at tesla.hu>
Sent: Friday, March 12, 2004 22:18
Subject: Re: Otlet kellene - C macro


> Fuzesi Arnold wrote:
> > Tudod mi a fura? Ez már régóta a fejemben van.
> > Aki tud asm-ben/C-ben/Basic-ben/Pascal-ban/Java-ban/stb programozni, azok
> > kozül egy-két kósza lélek kivételével
> > senki nem szokta eröltetni a C/Java-n kivül a többit.
>
> Most mar hozzaszolok:
> En asm-ben/C-ben/Pascal-ban es Basic-ben is tudok programozni. Illetve
> basicben mar nem biztos, mert lassan ~8 eve (C64 korszakom) nem irtam egy
> basic sort sem. A java-t meg nem akarom megtanulni, mert nem erdekel. Nincs
> ra szuksegem. Mindenesetre nincs favorit programnyelvem. Ha valamit asm-ben
> kell megirni, az tobbnyire azert van, mert:
>    - gyors vagy kicsi meretu, azaz jol kioptimalizalt kod kell
>    - az algoritmus nem igazan illeszkedik a strukturalt programozas logikajahoz.
>    - mindent kezben akarsz tartani. Ez csak bizonyos bonyolultsagu programig
> mukodik, utana epp ellenkezo az eredmeny.
>    - nem lehet magas szinten, mert nagyon hardverkozeli. Pl. boot betoltot
> (vinyo bootsector-ba) eleg maceras lenne C-ben megirni.
>
> A C es a Pascal szerintem majdnem egyenertekuek hasznalhatosag
> szempontjabol. Mar aki tudja hasznalni. C egy kicsit univerzalisabb, de
> mittomen egy gyors "ezt kiprobalom" temara a pascal egyszerubb. (string
> kezeles, grafika (PC-n), etc...)
>
> Egyebkent a "bizzunk mindent a forditora, majd az optimalizal, ha nem, akkor
> szar a fordito" kijelenteseket rohadtul utalom. A fordito nem tudja mit
> akrasz, csak talalgat. Vagy eltalalja vagy nem. A multkori vita Andras
> Tantos-sal a PICC bit valtozoirol errol is szolt.
>
> Pl. hogy egy byte valtozo mind a 8 bitjenek erteket adsz egymas utan, akkor
> miert nem optimalizalja egy byte ertekadasra? Mert nincs joga hozza. Pl. ha
> az egyik bit egy strobe jel a hardverben, a masik meg egy adat bit amit a
> strobe ir be, akkor fontos hogy a bitek milyen sorrendben kapnak erteket.
>
> Vagy: LCD busy flag kiolvasasa a CARRY-be. Beirod C-ben hogy CARRY=RD7, es
> kapsz egy legkevesebb 4 utasitasos kodot. A fordito nem tudja maskepp
> megcsinalni. De ha te tudod, hogy a PORTD also 7 bitje nem erdekel, csak a
> 7., akkor balra rotalod 1db utasitassal es a carry-ben van ami kell.
>
>
> Egyebkent nem vagyok semmi rossznak elrontoja, de ha valaki printf-et akar
> irni, az tenyleg jobban illeszkedik az asm logikajahoz. Egyszeruen nem lehet
> C-ben a strukturalt programozas miatt attekinthetore _ES_ hatekonyra irni a
> kodot. Mondjuk alapbol nehez feladat, mert a float->str konverziot mar eleg
> durva asmben irni...
>
> Mar irtam egy parszor sajat printf-et, es emiatt teljesen egyetertek
> Arnold-dal, hogy a legjobb ugy csinalni, hogy amit egyszer mar megirt valaki
> azt felhasznalni, es a sajattal kiegesziteni.
>
> A bemasolom a meglevot a sajat kodba is jo megodlas lehet, csak eleg gany.
> Akkor lehet letjogosultsaga, ha k*rvara nem erdekel hogy nez ki, vagy ha
> sokat kell atalakitani, vagy jobban ki kell optimalizalni a library
> fuggvenyt (pl. nem kell ez-meg-az, mer' nincs rom hely).
>
> Alapvetoen egyebkent nekem is ez a problema merult fel mint Arnoldnak, azaz
> valtozo parameterezesu makro kellett volna. Tobb prog forumon mondtak hogy
> nem standard, eddig csak a gcc tudja. Raadasul az en problemamat nem lehett
> workaround fuggvennyel megoldani csak makroval. Ha erdekel valakit, leirom
> miert, de lehet akar talalos kerdes is.
>
> --
> ((( Móczik Gábor )))--((( hu <- DOT <- freemail <- AT <- progzmaster )))
> ((( Debian unstable )))-((( Kernel 2.4.20 )))-((( Celeron466 / 128Mb )))
> ((( -->  Vigyázat! Ön súlyos közlekedési balesetet szenvedett.   <-- )))
> ((( -->          Kívánja, hogy a légzsák felfúvódjon?            <-- )))
>
>



More information about the Elektro mailing list