
Prof. Abrantes Araújo Silva Filho
Biography of instructor/staff member #1
Este curso está voltado para cientistas da computação, engenheiros da computação e qualquer outra pessoa interessada em escrever programas melhores através do aprendizado do que está "por baixo do capô" de um computador.
O objetivo global deste curso é explicar os conceitos fundamentais e duradouros subjacentes a todos os computadores, e mostrar maneiras práticas e concretas de aplicar esses conceitos para melhorar a corretude, performance e utilidade dos seus programas. Como Bryant e O'Hallaron escreveram, no clássico livro "Computer Systems: a programmer's perspective", se você estudar e aprender o conteúdo deste curso estará no caminho certo para se tormar um "programador poderoso raro", que sabe como as coisas funcionam e como consertá-las quando elas quebram.
Para ter sucesso neste curso você precisa dos seguintes conhecimentos prévios:
Este curso é intensivo e exigirá de você de 6-12 horas semanais de estudo, além das horas em sala de aula, para que você aprenda o conteúdo. Haverá muito trabalho prático, exercícios manuscritos e online, provas surpresa e atividades no laboratório.
Por favor, não subestime a carga horária necessária de estudos. Se você já está fazendo diversos outros cursos intensivos, talvez seja melhor você terminar os outros cursos primeiro e depois, quando tiver mais tempo para se dedicar, se matricular neste curso.

Biography of instructor/staff member #1
Em princípio sim, desde que você se esforço no começo para aprender C por conta própria. Há muito material de estudo (livros e onlie) para o aprendizado de C e, se você se esforçar realmente, você pode aprender C enquanto faz este curso.
O material necessário para o curso está disponível no Laboratório de Hardware, mas é altamente recomendável que você compre algum Kit de Arduino para realizar atividades em casa.