Tengo una clase en programación de bajo nivel que requiere un proyecto final (plan de estudios al final). Básicamente es una pieza de software que pone en uso todo lo que aprendió.C y sugerencia de proyecto de ensamblaje necesaria para clase en software de bajo nivel
Tenía algunas ideas, como el diseño de mi propio Roguelike (debería ser algo así como Nethack, solo para un jugador), pero me gustaría algunas sugerencias sobre alternativas. No necesita ser un juego, puede ser cualquier cosa. El plazo es de un mes y medio, y tengo otros proyectos, etc. por lo que no debería ser demasiado que lleva mucho tiempo implementar.
Requisitos:
- uso, al menos, 4 E/S dispositivos, uno de los cuales debe ser el ratón o el puerto serie
- Algunos de esos dispositivos deben utilizar interrupciones, otros deben utilizar sondeo
- Idiomas: C y de montaje (obligatoriamente, de lo contrario hay una penalización)
- Implementar las máquinas de estado
el pER ipherals nos dio una conferencia sobre fueron:
- tarjeta gráfica - Modo gráfico
- Tarjeta gráfica - el modo de texto
- ratón
- teclado
- tiempo real Contador
- de a bordo Altavoz (a través de temporizadores 0 y 2)
- Puerto serie
Este es el programa abreviada: periféricos
de entrada/salida y su operación de asignación directa en un proceso direcciones del espacio de acceso a los periféricos en modo de sondeo y por Procesador de interrupción interrupciones en la arquitectura IA-32 y el controlador de interrupción. Escribiendo rutinas de servicio de interrupción en la Asamblea y en C Estudio de algunos periféricos típicos de los ordenadores personales, tales como teclado, ratón, tarjeta gráfica, reloj de tiempo real , temporizador, altavoz y puerto serie.
Programación en la programación C idioma: diferencias principales con respecto del lenguaje C++; programación estructurada en C. Disposición de la memoria de un proceso . Llamadas de función: mecanismos, paso de parámetro , almacenamiento de variables locales y valores devueltos. Programación combinada de en C y el conjunto de la familia de procesadores IA-32 . Creación y uso de bibliotecas. Enlace estático del código de objeto.
uso de herramientas de desarrollo de software: gcc, make, GDB, ar, prof, diff, parche y SVN
Gracias por su tiempo!
Alguien, por favor CW. –
Wow. Una escuela con un departamento de CS y un maestro lo suficientemente serio como para tener un proyecto de programación realmente agradable. ¿A dónde asistes, Francisco? –
Michael, Facultad de Ingeniería de la Universidad de Oporto, Portugal. http://www.fe.up.pt/si_uk/ –