Predavani hodnot mezi asm a C v CCS 550

Josef Štengl ok1ced na nagano.cz
Čtvrtek Leden 22 20:10:05 CET 2015


Správně se zeptat :-)

1) Cílová platforma/procesor (lépe platforma, než označení čipu)
2) Překladač který používáte - asm zápisy se různí.

Pak si najít manuál k překladači. A je - li to Texas, tak popis assembleru bude v jiném manuálu.

Jinak je to věštění z křišťálové koule (bohužel nemám žádnou funkční ;-).


Z hlavy střelím jen možnost pro ARM a ti překladač. Ale vzhledem k tomu, že pojem ctg mi nic neříká, tak to můžete být 
třeba pro C6000, což neznám (jen trochu C2000, mršku jednu proradnou):

   .ref n
   ldr  r1, n	; adresa do r1
   ldr  r0, [r1] ; hodnota do r0

opačně
   ldr r1, n	; adresa do r1
   str r0, [r1]	; hodnota z r0 do n

ced




Dne 22.1.2015 v 15:28 Pavel Hudeček napsal(a):
> Dobrý den všem,
> mám proměnnou n, která obsahuje 32b unsigned int a chtěl bych ji dostat do registru r0. Jindy zas potřebuji opačný přenos.
>
> Při gůglení jsem našel, že by to v gcc mělo jít takto: mov r0,n. Jenže tak to nejde, takže se tu asi používá jiný
> překladač. (některé věci ze starterwaru mají dvě verze, jednu v adresáři gcc, druhou v cgt. Pokud první obsahuje asm, tak
> mi obvykle nejde přeložit)
>
> Jak to tedy správně dělat? / Jak se správně ptát?
>
> Děkuji,
> PH
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>


Další informace o konferenci Hw-list