Professional Documents
Culture Documents
MCD Asm
MCD Asm
enteros a y b
; Hecho por:
; Aguirre Casillas Fernando Aldo
; García Abundez Rogelio
* = 0x100
vmhlt=0
print=1
prstr=2
rdint=3
prchr=5
switch=7
lda #1
lea [bp+@x@mcd] ; *x=1;
sta [b]
lda #0
lea [bp+@y@mcd] ; *y=0;
sta [b] ; }
jmp @2
@1: ; else {
lda [bp+@b@mcd] ; b
psh a
jsr @mcd ; mcd(b, a%b, &xp, &yp);
pop 8
@2:
LSP BP ; //regreso
POP BP
RTN
LEA @dar
irq prstr
@x@main= 0 ; int x;
psh 2
@y@main= 2 ; int y;
psh 2
@a@main= 4 ; int a;
psh 2
@b@main= 6 ; int b;
psh 2
lea bp + @y@main
psh b
lea bp + @x@main
psh b
lda [bp + @b@main]
psh a
lda [bp + @a@main]
psh a
jsr @mcd
pop 8
lda #'*'
irq prchr ; cout << '*';
lda #'+'
irq prchr ; cout << '+';
lda #'*'
irq prchr ; cout << '*';
lda #'='
irq prchr ; cout << '=';
LSP BP ; regreso
POP BP
RTN
pila: