Hola Julieta!
Perdón, sí, ahora ví tu mensaje en otro hilo, se nos pasó. Respondo entrelíneas:
1. En el procedimiento de cambiar modo, cuando lo ejecuto y hago todos los pasos, al final en salida de ensamblado/ejecucion me sale: Error : se intento hace pop con el satck vacio. Supongo que es cuando hago out al puerto log(22). y el codigo. No hice el paso anterior de mandar el codigo 64, porque no entendi que hay que hacer, si es lo de comando [parametro], o no, que tampoco entendi eso de comando [parametro].
Mmm, si te da ese error es poque estás haciendo pop con un stack vacío :). Fijate si estás ejecutando un 'ret' sin haber hecho un 'call' previo, o si estás haciendo 'pop' sin haber ejecutado 'push' antes. No está relacionado con los OUT que estés haciendo.
2. En data tengo que definir los puertos entrada, salidas y log?
En .data se colocan las directivas del ensamblador para definir memoria (db, dw). Si te referís a los EQU para definir los valores de los puertos de entrada, salida y log, esos pueden ir en cualquier parte ya que son directivas para el ensamblador, pero el inicio del archivo (antes de .data o .code) es lo más razonable. Te recomiendo revisar los ejemplos del ArquiSim.
3. Y en la parte de puertos, no tenemos que poner nada no? solo ponerlos puertos de entrada , que nos van a dar ustedes?
En la sección de puertos vas a definir los valores de los puertos de entrada (en este caso el único relevante es el 20) junto con los valores de entrada a leer. Te recomeindo mirar el video de presentación del Arqui Sim del año pasado (colgado en la sección de laboratorio), ahí Gustavo explica cómo funcionan los puertos de E/S soportados.
4. Y supongo que en algun momento del codigo tenemos que poner in puerto de entrada ... , eso donde iria? al principio del código?
Eso es parte de la resolución del laboratorio, el dónde poner los IN queda claro a partir de la compilación de la solución en C que hagas.
Perdón, sí, ahora ví tu mensaje en otro hilo, se nos pasó. Respondo entrelíneas:
1. En el procedimiento de cambiar modo, cuando lo ejecuto y hago todos los pasos, al final en salida de ensamblado/ejecucion me sale: Error : se intento hace pop con el satck vacio. Supongo que es cuando hago out al puerto log(22). y el codigo. No hice el paso anterior de mandar el codigo 64, porque no entendi que hay que hacer, si es lo de comando [parametro], o no, que tampoco entendi eso de comando [parametro].
Mmm, si te da ese error es poque estás haciendo pop con un stack vacío :). Fijate si estás ejecutando un 'ret' sin haber hecho un 'call' previo, o si estás haciendo 'pop' sin haber ejecutado 'push' antes. No está relacionado con los OUT que estés haciendo.
2. En data tengo que definir los puertos entrada, salidas y log?
En .data se colocan las directivas del ensamblador para definir memoria (db, dw). Si te referís a los EQU para definir los valores de los puertos de entrada, salida y log, esos pueden ir en cualquier parte ya que son directivas para el ensamblador, pero el inicio del archivo (antes de .data o .code) es lo más razonable. Te recomiendo revisar los ejemplos del ArquiSim.
3. Y en la parte de puertos, no tenemos que poner nada no? solo ponerlos puertos de entrada , que nos van a dar ustedes?
En la sección de puertos vas a definir los valores de los puertos de entrada (en este caso el único relevante es el 20) junto con los valores de entrada a leer. Te recomeindo mirar el video de presentación del Arqui Sim del año pasado (colgado en la sección de laboratorio), ahí Gustavo explica cómo funcionan los puertos de E/S soportados.
4. Y supongo que en algun momento del codigo tenemos que poner in puerto de entrada ... , eso donde iria? al principio del código?
Eso es parte de la resolución del laboratorio, el dónde poner los IN queda claro a partir de la compilación de la solución en C que hagas.
Saludos,
Federico