Re: C kérdés

vajk fekete halaloszto at yahoo.co.uk
Fri Jun 15 18:12:29 CEST 2007


A #DEFINE -t a c preprocesszor alkalmazza, kvazi ertelmezi a forrast, es ir egy ujat, amiben nincs # sehol. 
Megfelelo kapcsolokkal el tudod erni, hogy a preprocesszalt filet kiirja, es ne eressze ra a c forditot.

Aztan hogy sirni fog-e erte hogy egyebkent nem nez ki C forrasnak a file vagy sem, azt nem tudom.

vajk

----- Original Message ----
From: hg12345 <hg12345 at freemail.hu>
To: elektro <elektro at tesla.hu>
Sent: Friday, 15 June, 2007 5:56:55 PM
Subject: C kérdés

Hi!

Hogyan oldható meg, hogy a C-ben generált "konstansok" pl.: 
#define...  meghatározva, elérhetőek legyen az ASM (.s) 
programokban.  (GNU  4.01).  A .s már hibát nem jelez a #define-ra, de 
nem alkalmazza mert nem ismeri, csak ponttal kezdödő 
vezérlő ,utasításokat fogad. Az .s -ben .equ és tsa. lehet, csak ilyen 
konstansokat lehet definálni.

Hogyan oldható meg, hogy csak egy header file legyen és ha lehetőleg 
csak egy definició. (igy kevesebb a hiba)

Egy megoldást találtam, de nem nem megfelelöje, csak alternativájak

#define   AAA  120L
const long cAAA=AAA;

ez tartalmazza a "C" és ez a program területre leteszi a konstansokat, 
így pointerrel az ASM programban beolvasható.

 .extern  cAAA;

     mov.w   #cAAA,w0
     mov.w   [w0],w0

Amit szeretnék az így nézne ki:

      mov.w  #AAA,w0     ;egyből a konstanst tölteném be...

  Üdv
        

35% kedvezmény az Osiris Kiadó köteteire. TÉRjen be: egész héten várjuk programjainkkal az Alexandra Könyvtéren, a pécsi Széchenyi téren.
http://ad.adverticum.net/b/cl,1,6022,176377,235993/click.prm

-----------------------------------------
          elektro[-flame|-etc]







      ___________________________________________________________ 
Yahoo! Mail is the world's favourite email. Don't settle for less, sign up for
your free account today http://uk.rd.yahoo.com/evt=44106/*http://uk.docs.yahoo.com/mail/winter07.html 


More information about the Elektro mailing list