myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Ungelesen 07.12.21, 22:17   #1
mbmb
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 15
Bedankt: 135
mbmb gewöhnt sich langsam dran | 57 Respekt Punkte
Standard MAL bzw. Mic1

Hallo.

Ich hätte eine Frage zu einem Code-Problem. es geht um integer Division mit Rest.
Wie könnte ich diesen Algorithmus in Assembler umwandeln? (Mic1)


Q := 0; R := N
while R ≥ D do
Q := Q + 1
R := R − D
end
return (Q, R)

Speziell dieses While übersteigt meine Fähigkeiten...
mbmb ist offline   Mit Zitat antworten
Ungelesen 12.12.21, 18:47   #2
bykof
Anfänger
 
Registriert seit: May 2010
Beiträge: 2
Bedankt: 1
bykof ist noch neu hier! | 0 Respekt Punkte
Standard

Wenn du etwas C kannst, dann nimm doch einfach diese Seite hier.
C wird ja immer in Assembler kompiliert, daher einfach eine "Abstraktionsschicht" drueber nutzen: [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

Wuerde dann so aussehen:

C Code:
int main() {
int n = 0;
int d = 0;
int q = 0;
int r = n;

while(r >= d) {
q = q + 1;
r = r - d;
}
}

Assembler Code:
main:
PUSH %BP
MOV %SP, %BP
@main_body:
SUB %SP, $4, %SP
MOV $0, -4(%BP)
SUB %SP, $4, %SP
MOV $0, -8(%BP)
SUB %SP, $4, %SP
MOV $0, -12(%BP)
SUB %SP, $4, %SP
MOV -4(%BP), -16(%BP)
@while0:
CMP -16(%BP), -8(%BP)
JLT @false0
@true0:
ADD -12(%BP), $1, %0
MOV %0, -12(%BP)
SUB -16(%BP), -8(%BP), %0
MOV %0, -16(%BP)
JMP @while0
@false0:
@exit0:
@main_exit:
MOV %BP, %SP
POP %BP
RET
bykof ist offline   Mit Zitat antworten
Folgendes Mitglied bedankte sich bei bykof:
karfingo (28.12.21)
Ungelesen 27.12.21, 23:46   #3
mbmb
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 15
Bedankt: 135
mbmb gewöhnt sich langsam dran | 57 Respekt Punkte
Standard

Vielen Dank
mbmb ist offline   Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:39 Uhr.


Sitemap

().