Wie man richtig ein array erstellen, in die ARM-assembly?

Ich bin derzeit lernen die ARM-assembly für eine Klasse und haben auf ein problem stoßen, wo ich brauchen würde, die Verwendung eines "Arrays." Ich bin mir bewusst, dass es gibt keine solche Sache wie ein array im ARM, so dass ich Speicherplatz reservieren und zu behandeln, die als ein array. Ich habe zwei Fragen.

  1. Bin ich richtig das hinzufügen von neuen Werten für den array oder bin ich bloß überschreibt den vorherigen Wert? Wenn ich mich überschreiben die Werte, wie gehe ich über das hinzufügen von neuen Werten?
  2. Wie gehe ich über die Schleife durch die verschiedenen Werte des Arrays? Ich weiß, ich habe zu verwenden loop: aber nicht wissen, wie Sie es verwenden, um den Zugriff auf die verschiedenen "Indizes."

So weit, dies ist, was ich bekommen habe aus der Lektüre ARM-Dokumentation, wie ich gesammelt habe aus online-Ressourcen.

        .equ SWI_Exit,  0x11

        .text
        .global _start

_start: .global _start
        .global main

        b       main

main:
        ldr     R0, =MyArray
        mov     R1, #42
        str     R1, [R0], #4
        mov     R1, #43
        str     R1, [R0], #4
        swi     SWI_Exit

MyArray: .skip 20 * 4
        .end

Als seitliche Anmerkung, ich bin mit ARMSim#, wie erforderlich, durch meinen professor, so dass einige Befehle erkannt, die von der GNU-tools nicht erkannt werden ARMSim#, oder zumindest ich glaube, dass ist der Fall. Bitte korrigieren Sie mich, wenn ich falsch Liege.

  • Warum nach unten Stimmen? Ja, dies ist eine teilweise Verwandte, um Hausaufgaben, aber ich kann sehen, diese Informationen nützlich sein für andere und ich bin nicht zu Fragen, wie um meine Aufgabe zu tun.
  • Wenn Sie möchten, um es so dort ist keine solche Sache wie ein array in jedem Prozessor-Familie nicht gerade arm. Arrays dont existieren tatsächlich, Sie sind nur einen blob-Speicher, die irgendwo anfangen. Viele Befehlssätze, auf jeden Fall arm, Unterstützung von einem register offset-Adressierung Modus, der Ihnen erlaubt, um ein reines Gefühl von einem array. Ich würde vorsichtig sein, machen die Aussage, die Sie in der Zukunft gemacht.
  • Ah danke für den Hinweis, hat mir sehr geholfen mit meinem Verständnis. Ich werde auch halten Sie im Verstand, Sie nicht zu nennen ein array
InformationsquelleAutor allejo | 2013-10-12
Schreibe einen Kommentar