Hoe maak ik een dup instructie die de bovenste waarde op de stack er nog een keer opzet? iemand? 
Alvast bedankt!
Alvast bedankt!
Zo scherp als een voetbal!
Verwijderd
Reptile209 schreef op 06 augustus 2002 @ 16:00:
Of je moet 'm in C even compileren en met debug kijken hoe de compiler het oplost... isse siempel?
1
2
3
4
5
6
7
8
9
10
| switch (r) { case 0: echo "blaat"; break; case 1: echo "woei"; break; }; |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| push r
pop temp
push temp
push temp
push 0
cmp
jmpne case1
push "blaat"
echo
jmp endcase
case1:
pop temp
push temp
push temp
push 1
cmp
jmpne endcase
push "woei"
echo
endcase: |
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.
Is het niet veel handiger om een stack te schrijven in C ?? Ik weet de opdracht niet, wij moesten toendertijd een virtuele programmeertaal parsen en daar een exe van bakken die wat deed. Ik deed dat door gewoon C te genereren en die door cc te gooienVerwijderd schreef op 06 augustus 2002 @ 13:30:
Ik ben heel fijn bezig met een practicum Vertalerbouw, waarbij we een 'eigen' programeertaaltje moeten maken.
En nu wilde ik een switch statement toevoegen, maar daar wil ik een dup instructie hebben, zodat ik de waarde waarmee ik de cases vergelijk niet weg is nadat ik 1 keer een eq instructie heb uitgevoerd... Aangezien er standaard geen dup voorhanden is, moet ik die in C nabouwen...
-edit-
Is het trouwens niet zo dat wanneer je een pop instructie doet je die waarde ook kwijt bent? Of kan je die gewoon in een variabele stoppen?
Verwijderd schreef op 07 augustus 2002 @ 11:42:
Dat is dus het probleem... De pop waarover ik beschikking heb, verwijdert alleen de waarde van de stack maar geeft deze niet terug... heel vervelend...
En wat nog veel vervelender is dat ik niet eens de beschikking heb over een push instructie!
Echt heel vaag en het ik heb ook niet echt zin om het uit te leggen.
Als je meer wil weten kijk maar op http://fmt.cs.utwente.nl/slade
1
2
3
| ldvar temp stvar temp stvar temp |
Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.