Hallo haus51,
bei einem eindemensionalen Array sollten die Variablen eigentlich nacheinander angeordnet sein. Und im Bascom kann man ja unter "Show Compile Result" nachschauen, wo das Array anfängt.
MfG Mark
Hallo haus51,
bei einem eindemensionalen Array sollten die Variablen eigentlich nacheinander angeordnet sein. Und im Bascom kann man ja unter "Show Compile Result" nachschauen, wo das Array anfängt.
MfG Mark
Das war auch meine Vermutung.
Nur die Ergebnisse sind leider ncht so wie erwartet.
Entweder mach nich noch was falsch oder es ist doch anders.
Es sollte doch so gehen:
.
For I = 1 To 255
Dcfbit(i) = I
Next
I = 97
L:
Cls
$asm
ldi r24, {i}
sts {meinfeld},r24
Incr I
$end Asm
Lcd "M = " ; Meinfeld
Goto L:
Tuts aber nicht
Günther
(na, soooo einfach geht's auch nicht, das ist ja ein RISC-Dödi)
Empfehlung:
https://www.roboternetz.de/wissen/in...Cr_Bascom-User
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Daher hab ichs ja
Vereinfacht: i -> r24, r24 -> meinfeld, i increment, meinfeld anzeigen ->Schleife
Wo hakts??
d.h "I" ist auf der adresse 1 - 255 ?
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Die for - next schleife brauch ich vorerst nicht, I = konstant auf irgendeinen Wert.
Günther
Am Besten wärs natürlich, wenn i als Zeiger auf Dcfbit(i) zeigen tät.
Bevor man sich mit solchen Dingen wie "Zugriff auf Bascom Arrays mit Assembler" sinnvoll beschäftigen kann fehlen ein paar nicht ganz unwichtige Daten.
1. Welchen Datentyp hat das einzelne Arrayfeld ?
2. Ist die Startadresse des Arrays bekannt ?
3. Wie sind Daten die breiter als 8 Bit sind im Speicher angeordnet ?
Grüße,
Hanni
Grundregeln des Forenpostings:
1. Nutze niemals die Suchfunktion!
2. Überprüfe niemals die Topics nach Ähnlichkeiten!
3. Schreibe alles in hellgelb!
1. byte
2. nein
3. im array nur 8 bit daten
Um es zu präzisieren: Die dcf77 Uhr liefert einen string mit 60 Werten (std. min, sek...) die verarbeite ich mit Bascom zu realen werten. in ass aber eigentlich eleganter?
Lesezeichen