MAC0211  Laboratório de Programação I

OBJETIVOS:  Expor o estudante a conceitos fundamentais de programação de baixo e médio nível através de aulas teóricas e projetos práticos envolvendo o desenvolvimento de projetos de software utilizando linguagem de montagem, ferramentas para gerenciamento de compilações e construção de programas de médio porte em uma linguagem procedimental. Apresentar os fundamentos básicos, teóricos e práticos, do uso de expressões regulares e gramáticas no desenvolvimento de software através de analisadores léxicos e sintáticos.

PROGRAMA:  Conceitos basicos de arquitetura de computadores. Linguagem de montagem, montadores, ligação de programas, interrupções, interface com linguagens de alto nível, interface com hardware. Gerenciamento de compilação de programas e bibliotecas com ferramentas como make. Modularização de código. Construção de um programa de médio porte em uma linguagem procedimental (por exemplo, C). Técnicas de depuração e testes de programas. Ferramentas auxiliares no desenvolvimento de programas. Expressões regulares, geradores de analisadores léxicos, noção básica de gramáticas, geradores de analisadores sintáticos. Entrada e saída padrão. concatenação de programas através de pipelines, linguagnes de processamento de texto (por exemplo, AWK e Perl).

PRÉ-REQUISITOS:  MAC0122.

CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS:  8 horas, 4 créditos-aula e 2 créditos-trabalho.

CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM:  Média ponderada de provas e projeto.

BIBLIOGRAFIA BÁSICA: 

OBSERVAÇÃO:  Disciplina obrigatória no currículo do BCC.

 

[Veja dados da disciplina no JúpiterWeb]


Oferecimentos recentes da disciplina: 2002/1, 2001/1, 2001/1, 1999/1
DCC | IME-USP | 2003, 2007