PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

24
PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL

Transcript of PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

Page 1: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 1© Jaime Alberto Parra Plaza

PROGRAMACIÓN EN

BAJO NIVEL

Page 2: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 2© Jaime Alberto Parra Plaza

PROFESOR

JAIME ALBERTO PARRA PLAZA

Page 3: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 3© Jaime Alberto Parra Plaza

OBJETIVOS:

• Conocer los bloques funcionales que forman el hardware de un sistema de cómputo

• Entender cómo ejecuta un computador realmente un programa o software

• Aprender a realizar una interacción correcta entre hardware, software y firmware

Page 4: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 4© Jaime Alberto Parra Plaza

Los objetivos se logran aprendiendo el Lenguaje Ensamblador (Assembly), único lenguaje que permite programar el hardware de la máquina DIRECTAMENTE.

Los otros lenguajes se convierten en traductores que ocultan al programador los detalles internos del sistema físico.

Surge el interrogante:

¿Para qué aprender Assembly?

Page 5: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 5© Jaime Alberto Parra Plaza

• Para entender el funcionamiento interno,

a nivel electrónico, de un sistema de

cómputo.

• Para entender lo que realmente ocurre

cuando se ejecuta un programa.

Page 6: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 6© Jaime Alberto Parra Plaza

• Más rápido

• Más pequeño

• Más eficiente

Al comparar un programa hecho en Assembly con uno hecho en otro lenguaje, puede afirmarse SIEMPRE que es:

Page 7: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 7© Jaime Alberto Parra Plaza

Pero, ¿qué es lo que realmente PUEDE hacer un computador?.

¿Las tareas que un sistema de cómputo realiza son infinitas o pueden clasificarse en alguna forma?

Page 8: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 8© Jaime Alberto Parra Plaza

USUARIO

MÁQUINA

RESOLVER UN

PROBLEMA

OBTENER UN

SERVICIO

RESOLUCIÓN DEL

PROBLEMA

PRESTACIÓN DEL

SERVICIO

Page 9: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 9© Jaime Alberto Parra Plaza

PRERREQUISITOS:

Para comprender adecuadamente

el curso, es recomendable un

dominio, entre normal y alto, de

los siguientes temas:

Page 10: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 10© Jaime Alberto Parra Plaza

• Electrónica Digital

• Álgebra Booleana

• Sistema Operativo MS-DOS

• Algoritmia

• Programación en un lenguaje formal

Page 11: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 11© Jaime Alberto Parra Plaza

La Electrónica Digital y el Álgebra Booleana permiten entender cómo funciona la máquina.

El Sistema Operativo permite manejar el computador, comunicarse con él.

La Algoritmia y la Programación permiten programar u ordenar al computador el cumplimiento de una labor

Page 12: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 12© Jaime Alberto Parra Plaza

METODOLOGÍA:

• 32 sesiones (2 / semana), utilizadas para:– Clases magistrales– Sesiones Exámenes Parciales– Sesiones Laboratorios– Asesorías al proyecto final

• Monitorías de Laboratorio

Page 13: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 13© Jaime Alberto Parra Plaza

LIBROS GUÍA:• Genérico:

Godfrey, J. Terry. Lenguaje ensamblador para microcomputadoras IBM. 1991.

• Sección software:Abel, Peter. IBM PC assembler

language and programming. 1987.

• Sección hardware:Triebel y Singh. The 8088 and 8086 microprocessors. 1991.

Page 14: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 14© Jaime Alberto Parra Plaza

REFERENCIAS:

• Microsoft corporation. Macro assembler programmer’s guide. 1991.

• Phoenix technologies. System BIOS for IBM PCs,1991.

• Brey, Barry. 8086/8088 assembly language programming. 1994.

• Deitel, Harvey. An introduction to

operating systems. 1984.

Page 15: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 15© Jaime Alberto Parra Plaza

OTROS LIBROS ÚTILES:• Duncan, Ray. Advanced MS-DOS

programming. 1988.

• Norton, Peter. Programmer’s guide to PC and PS/2 systems. 1988.

• Downton, A.C. Computers and microprocessors. 1992.

• Matloff, Alan. IBM microcomputer architecture and assembly language. 1992.

• Sargent y Shoemaker. The IBM PC, from the inside out. 1986.

Page 16: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 16© Jaime Alberto Parra Plaza

EVALUACIÓN:

• Examen parcial 1 20 %

• Examen parcial 2 20 %

• Laboratorios 15 %

• Exposición 15 %

• Proyecto 30 %

Page 17: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 17© Jaime Alberto Parra Plaza

EXÁMENES PARCIALES:

• Son teóricos y en forma de selección múltiple

• Buscan establecer el dominio conceptual y de abstracción que se posee sobre los temas dados

Page 18: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 18© Jaime Alberto Parra Plaza

LABORATORIOS:

• Complementan de manera necesaria la teoría expuesta en las clases magistrales

• Permiten desarrollar habilidades prácticas en el uso de herramientas propias de la disciplina

Page 19: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 19© Jaime Alberto Parra Plaza

EXPOSICIÓN:

• Busca que cada grupo de trabajo socialice con la clase un tema preparado previamente

• La exposición está acompañada con el desarrollo de una aplicación y de una animación. En general, la primera es una biblioteca de funciones y la segunda un applet

Page 20: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 20© Jaime Alberto Parra Plaza

PROYECTO FINAL:

• Se debe entregar un cronograma de actividades en la Semana 3.

• La información sobre el proyecto debe consultarse en el URL:

http://clotho.puj.edu.co/DIE/Projects

Page 21: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 21© Jaime Alberto Parra Plaza

Pedagogía

• No se puede adquirir el conocimiento si no se hace de manera práctica (aprendizaje activo)

• La repetición hace al maestro

• Para aprehender el conocimiento debe hacerse a través de la reflexión

Page 22: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 22© Jaime Alberto Parra Plaza

PROFESOR:• Email:

[email protected]

• URL:correo.puj.edu.co/jparra

• Oficina:

Oficinas Ingeniería Electrónica - Lago

• Teléfono:

3218216

Page 23: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 23© Jaime Alberto Parra Plaza

PREGUNTA:

• ¿Cuáles son las CUATRO funciones esenciales que debe cumplir un sistema operativo para ser considerado como tal?

Page 24: PBN - 00 - 1 © Jaime Alberto Parra Plaza PROGRAMACIÓN EN BAJO NIVEL.

PBN - 00 - 24© Jaime Alberto Parra Plaza

< FIN DE LA CLASE 0 >