Você está na página 1de 19

Introdução a MAC113 – 2018

Marcelo Finger

25/02/2018
Professor
Marcelo Finger

I Sala 210 Bloco do IME


I Não sou professor da FEA !!!
I Email: mfinger@ime.usp.br
I Antes de aparecer na minha sala, é melhor combinar um horário
antes
I Se você aparecer de repente, eu posso não estar l
I Será que o professor é preguiçoso?
O Curso
Organização das aulas

I Aulas das segundas na sala de aula (E-10)


I Intoduçao à ciência da computação
I Não é um curso sobre planilhas ou sobre uma linguagem de
programação
I Neste semestre usaremos a linguage R e o ambiente RStudio
I Aulas das sextas no Laboratório.
I Listas de Exercício
I Valendo nota
I paca.ime.usp.br
Objetivos do curso

1. Desenvolver o raciocínio analítico-dedutivo


2. Ensinar conceitos básicos de programação
3. Ensinar uma linguagem de programação
4. (Experimental) Preparação à Ciência de Dados
Programação do curso

1. Introdução à programação
2. Comandos de escolha
3. Comandos de iteração
4. Funções
5. Testes automáticos
6. Manipulação vetorial
7. Manipulação de ponto flutuante
8. Manipulação de strings
9. Acessando dados
10. Desenvolvimento de sistemas complexos
11. Manipulações de arquivos
Critérios de Avaliação
I Avaliação: Provas, Listas semanais e Exercícios programa
(EPs).
I Para ser aprovado o aluno deverá satisfazer todos os itens
abaixo.
I Média de Provas: MP ≥ 5, 0 onde:
2P1 + 3P2
MP =
5
I Média de EPs: MEP ≥ 5, 0 onde:
EP1 + EP2 + EP3
MEP =
3
I Média das Listas: ML ≥ 5, 0 onde
P11
i=2 Li
ML =
10
(
3MP+MEP+ML
5 , MP, MEP, ML ≥ 5, 0
Média Final =
min(MP, MRP, ML), caso contrário
Haverá uma prova substitutiva após a prova final que estará aberta
a todos os alunos que perderam uma das provas ou obtiveram
MP < 5, 0.
Alunos reprovados no curso normal podem ser aprovados na
reavaliação. Haverá uma prova de reavaliação fora do perído de
aulas, para todos os alunos com média final entre 3 e 5. O aluno
quer for para a reavaliação será aprovado se:

MF + Reaval
≥5
2
A média final do aluno aprovado na reavaliação (a que aparecerá no
histórico escolar) será calculada da maneira acima.
Material do Curso

I Slides do curso
I Linguagem R (Software Livre para Linux, MAC, Windows)
I Programa RStudio
Arquitetura de Computadores
Modelo Básico

Figure 1: Arquitetura básica


Unidade Central de Processamento

I Executa a função principal do computador.


I Processar significa:
1. Buscar a próxima instrução na memória
2. Executar a instrução buscada
3. Volta para 1
I A instrução está codificada numa linguagem própria chamada
de linguagem de máquina.
- Ex: 1001000101001100011
I Cada tipo de computador possui uma linguagem de máquina.
I Em geral, não se programa mais em linguagem de máquina,
mas utiliza-se uma linguagem de alto nível, que depois será
convertida em linguagem de máquina.
Memória

I Também chamada de memória primária ou memória volátil.


I Todo seu conteúdo desaparece quando o computador é
desligado.
I Armazena tanto programas quanto dados.
I Não se distingue um programa de um dado por sua “aparência”.
I A memória é um conjunto de posições.
- Cada posição pussui um endereço e um conteúdo.
- Cada posição da memória pode ser acessada aleatoriame
Entrada e Saída

I É o único contato da UCP com o mundo exterior.


I Contem um conjunto de “portas”, uma (ou mais) para cada
dispositivo, tal como:
I Tela (saída)
I Teclado (entrada)
I Impressora (saída)
I Disco rígido (entrada e saída)
I Outras formas “modernas” de E/S:
I Auto-falantes (saída)
I Microfone (entrada)
I Bluetooth (entrada e entrada)
I Rede de computadores (entrada e saída)
I etc
Dois tipos de memória

I Memória Primária:
I volátil: seu contúdo se perde quando o computador é desligado;
I interna;
I de rápido acesso e manipulação.
I Memória secundária:
I persistente: seu conteúdo permanece após o computador ser
desligado.
I externa;
I de acesso mais lento.
Linguagens de Alto Nível
I São convertidas para linguagem de máquina de duas maneiras:
I por um interpretador.
I por um compilador.
I Interpretador
I Transforma um comando de alto nível em uma sequência de
instruções de máquina.
I Em seguida, executa as instruções de máquina.
I Interpreta o proximo comando de alto nível.
I Ou seja, traduz o programa em alto nível linha a linha.
I Exemplos: R, Python, Java
I Compilador
I Traduz todo o programa de alto nível para um programa de
linguagem de máquina.
I Este programa “compilado” pode ser armazenado e
posteriormente executado quantas vezes quiser.
I Exemplos: C, C++, Fortran, etc.
Sistema Operacional

I É o pragrama que administra todos os recursos do computador:


I impressora, acesso de usuários, uso de memória, uso do disco,
tela, rede etc.
I Exemplos: Windows, DOS, UNIX (Linux, iOS, Android), etc.