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:
http://ctoassembly.com/
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