Re: Assambler programmieren, EBNF und Grammatiken.... -*Hikfe*
Geizhals » Forum » Programmierung » Assambler programmieren.... - (160 Beiträge, 1475 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
..........  Noch ein Beispiel, weil's so schoen war :-)  (lsr2 am 05.02.2023, 13:21:14)
.  Ein gruenes....
 (lsr2 am 04.02.2023, 22:28:10)
..  Re: Ein gruenes....  (hhetl am 07.02.2023, 11:55:16)
.
Re: Assambler programmieren, EBNF und Grammatiken.... -*Hikfe*
17.02.2023, 12:31:35
ich schreib mal hier was zum ASM Code:
Ist wohl kein echter Prozessor, zumindest nix bekanntes, da man ja auch Annahmen treffen soll, denke ich dass da vielleicht einige der Annahmen in der Lehrveranstaltung besprochen wurden und ich hier eher aus der Luft greife.

Aber dennoch:

la ist vermutlich load address
Ohne weitere Parameter kann man Annehmen dass der Wert in ein Adressregister gespeichert wird, nennen wir es A0

lv ist vermutlich load value
Ohne weitere Parameter kann man Annehmen dass dieser Wert in einem Datenregister gespeichert wird, nennen wir es D0

lit wird literal sein
Ohne weitere Parameter kann man Annehmen dass der Wert in ein Register wie den Akkumulator (ACC) gespeichert wird.

add und mul wird addieren und multiplizieren sein
Auch hier keine Parameter, also Annahme: Addiert/Multipliziert ACC mit D0, speichert in D0

sto wird STORE sein, also Annahme: speichert den Wert von D0 an der Adresse A0

Also er nimmt 32, addiert die 5 und dann multipliziert er mit 5 und speichert das Ergebnis auf die Adresse 40 die in a0 geladen ist.

int main() {
    int x = (32 + 5) * 5;
    int* ptr = (int*) 40;
    *ptr = x;
    return 0;
}

In jedem echtem ASM haben die Befehle mehr Parameter mit denen man festlegt welche Register verwendet. Aber kurzformen der gleichen Befehle wo man einen Teil der Parameter weglässt und es wird ein vordefiniertes Register verwendet sind üblich, hier wurde das aber extrem gemacht und normal hat man ja ein manual in das man schauen kann was dann hier vordefiniert ist.



Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
. PLONKED von Mr. 5  (pawantanwar am 05.07.2023, 14:42:41)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung