Está en la página 1de 2

1

LABORATORIO DE SISTEMAS DE COMPUTACIÓN


LABORATORIO Nro. 8
GNU/Linux, librería NCURSES, ensamblador en línea
Javier SANABRIA GARCIA
javisanabria@gmail.com
70581953

Presentación.

Los sistemas de computación, a menudo, requieren de una interfaz de usuario; que puede ser presentada en
modo texto o en modo gráfico. En este laboratorio, vamos a desarrollar un sistema de computación al cual,
se pueda acceder a través de una interfaz en modo texto, utilizando teclado y ratón.

La interfaz tiene un aspecto similar al de la figura 1 y permite sumar y multiplicar matrices 3x3. Para desar-
rollar este sistema de computación se debe utilizar el sistema operativo GNU/Linux, la librería NCURSES,
C/C++ y ensamblador en línea.

Sumar Multiplicar Salir

" # " # " #


1 2 3 + 9 8 7 30 24 18
4 5 6 6 5 4 = 84 69 54
7 8 9 × 3 2 1 138 114 90
Figura 1: Suma o multiplicación de matrices

Para este trabajo se sugiere estudiar los programas: menu01.c, menu02.c, menu03.c y menu04.c; para
la utilización de la librería NCURSES. También se sugiere estudiar los programas: asm07.c y asmc3.c;
para incluir ensamblador en un programa escrito en C/C++, esto se conoce como ensamblador en línea.
También se deben estudiar los programas: mymou01.c y mou03.c, para implementar el manejo del ratón.
El informe debe incluir análisis y diseño, para esto se debe utilizar diagramas de flujo y otras herramientas
adecuadas. Enviar al correo solamente el informe y el código fuente del sistema desarrollado. SI ENVÍAN
COMPRIMIDO UTILIZAR SOLAMENTE FORMATO .ZIP.

En el informe no debe incluirse ¡TODO! el código fuente del sistema. Solo se explican las partes importantes
utilizando: diagramas de flujo o diagramas UML u otra herramienta, acompañando solo los trozos de código
necesarios.

Actividades para el laboratorio.

1. Desarrollar un sistema de computación que permita dibujar una interfaz como en la figura 1. El sistema
permitirá sumar o multiplicar matrices 3x3. El sistema permitirá leer números de un dígito, que son
los elementos de cada una de las matrices. Por ejemplo a11 = 1 y b11 = 9.
Los elementos de la matriz resultado deben estar alineados a la izquierda como en los ejemplos:
" # " #
30 36 42 6 6 6
66 81 96 12 12 12
102 126 150 18 18 18
2. El sistema funciona desde el teclado; es decir, el usuario podrá salir del sistema presionando la tecla
“a”. De la misma manera el usuario podrá sumar matrices presionando la tecla “s”. Podrá multiplicar
matrices presionando la tecla “m”.

Para dibujar las matrices utilice las constantes definidas en la librería NCURSES, por ejemplo,
ASC_LLCORNER, ASC_HLINE, etc, ver man mvaddch. Para manejo de ratón, se puede empezar
con man getmaouse.
3. El informe DEBE ser elaborado utilizando LATEX.
Fecha de entrega
2

De manera individual, máximo hasta las 23:00 del domingo 26 de noviembre de 2023. Por supuesto que
pueden trabajar en grupos y compartir código, pero es importante respetar derechos de autor.

También podría gustarte