PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
AMP
EF Sponsor
Inlägg: 204 Blev medlem: 3 november 2004, 12:10:26
Inlägg
av AMP » 6 januari 2006, 00:03:37
hej jag undrar vad ds görförnågot? När det står upp radat som här nedanför. Någon som vet var det står förklarat? koden är till en pic.
sodjan
EF Sponsor
Inlägg: 43247 Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Inlägg
av sodjan » 6 januari 2006, 00:20:58
Känner inte igen "ds" på rak arm.
Kan du visa lite mer kring ditt exempel ?
Processor ? Var kommer källkoden från ?
monstrum
Inlägg: 620 Blev medlem: 13 januari 2005, 05:38:32
Ort: Göteborg
Inlägg
av monstrum » 6 januari 2006, 00:34:41
Är inte helt säker hur det är med PIC-assembler, men jag skulle göra en kvalificerad gissning på att man i kodstycket allokerar tre minnesaddresser och definierar dessa som variabelnamn.
sodjan
EF Sponsor
Inlägg: 43247 Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Inlägg
av sodjan » 6 januari 2006, 00:56:33
OK. Nyckel på killens hemsida är :
"For anyone interested, the Source Code and Object Code are available along with my own PIC assembler ."
Alltså, har har skrivit något egen assembler med lite egna kommandon/direktiv.
Jäkligt korkat, är väll det minsta man kan säga.
Dock, jag ser inte att det skulle ta mer än ett par timmar att "renskriva"
hans källkod till korrekt PIC assembler...
rehnmaak
Inlägg: 2204 Blev medlem: 13 december 2005, 01:43:41
Inlägg
av rehnmaak » 6 januari 2006, 02:04:40
Jag känner igen detta från assemblers till 68k. "ds" står för "define storage" och operanden "1" betyder hur många bytes som ska allokeras.
I din kod betyder det alltså att du definerar tre minnespositioner med namnen "wsave", "ssave" och "icount" om 1 byte vardera.
AMP
EF Sponsor
Inlägg: 204 Blev medlem: 3 november 2004, 12:10:26
Inlägg
av AMP » 6 januari 2006, 10:50:00
ok tackar så mycket för svaren!
sodjan
EF Sponsor
Inlägg: 43247 Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Inlägg
av sodjan » 6 januari 2006, 13:31:58
Notera bara att det inte bara är "ds" som behöver justeras
för att få det till normnal MPASM syntax. Enklast är bara att
köra igenom en gång så kommer MPASM att ge dig en
snygg "to-do" lista...
DVC
Inlägg: 4 Blev medlem: 22 januari 2006, 11:24:32
Ort: Umeå
Inlägg
av DVC » 24 januari 2006, 18:50:11
"ds" är ett assemblerdirektiv som gör att man slkapar en "lucka" i programkoden.
ds= define space
ifall man ger ett namn används det tex för variabler som i exemplet.
sodjan
EF Sponsor
Inlägg: 43247 Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Inlägg
av sodjan » 24 januari 2006, 19:01:53
Helt fel.
Icecap
Inlägg: 26629 Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark
Inlägg
av Icecap » 24 januari 2006, 19:09:55
DVC: helt fel! DS är kompilerdirektivet för (som skrivit tidigare) 'Define Storage' och talet efter anger hur många bytes som ska allokeras.
DVC
Inlägg: 4 Blev medlem: 22 januari 2006, 11:24:32
Ort: Umeå
Inlägg
av DVC » 25 januari 2006, 18:06:26
Visst är det så som ni säger... utdrag från pseudo-op'arna i manualen till en assembler jag använt:
The instruction
DS expr
Increments the location counter with the value of the arithmetic experession.
It may also be used, by combination with ORG instructions, to manage the
internal RAM memory (DS: Define Storage).
sodjan
EF Sponsor
Inlägg: 43247 Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Inlägg
av sodjan » 25 januari 2006, 18:55:28
> ...manualen till en assembler jag använt...
En PIC-assembler manual ??
sm5uiu
Inlägg: 14 Blev medlem: 8 mars 2005, 23:29:01
Inlägg
av sm5uiu » 25 februari 2006, 13:37:44
Kolla i MPASM hjälpen - där står alla för mpasm speciella kommandon listade..
73 de Sam
Icecap
Inlägg: 26629 Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark
Inlägg
av Icecap » 25 februari 2006, 14:53:07
Och som det framgick var kommandot från en "egennbyggd" PIC-assembler....