[2012][Diciembre][Problema 1]

[2012][Diciembre][Problema 1]

de Alejandro Barreiro Deminco -
Número de respuestas: 1

No entiendo una cosa, en la solución del problema 1 del procedimiento cambiar_luces
la invocación pone:
mov AL, color
push color
push puntero
call cambiar_luces
....

luego en el procedimiento (resumo):

el color queda en la pos [BP+6] y se hace un MOV CX, [BP+6]
(...) MOV SI, 0 y luego

for:
 CMP CX, SI 
 je fin

 ...
 ADD SI, 1

Si no me equivoco en la bifurcación esta comparando el indice de control con el color... no deberia comparar el indice con la cantidad de oficinas?

Se puede en la invocación hacerle un push tambien a la cantidad de oficinas?

 

gracias, saludos


En respuesta a Alejandro Barreiro Deminco

Re: Dic 2012 Problema 1

de Romina Brown Latierro -

Claro, debe ser un error. En la letra te dice que en el stack viene la cantidad de oficinas y el puntero al inicio de la lista. El color está en AL nada más.

La invocación debería ser:

MOV AL, color

PUSH cantidad_oficinas

PUSH puntero

CALL cambiar_luces