Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 6. Programas, Máquinas e Computações
|
|
- Sônia Rosa Vilaverde
- 7 Há anos
- Visualizações:
Transcrição
1 Curso: Ciência da Computação Turma: 6ª Série Aula 6 Programas, Máquinas e Computações
2 Avisos Hoje tem dúvidas sobre a segunda etapa da ATPS. Somente 28 alunos/alunas entregaram a ATPS etapa 1. Ainda dá tempo. Próxima aula será revisão para a prova. Tem uma lista de exercícios para fazer para a próxima aula na sala virtual.
3 Programas Um conjunto de operações e testes compostos de acordo com uma estrutura de controle: Monolíticos: desvios condicionais e incondicionais Iterativos: estruturas de iteração Recursivos: sub-rotinas recursivas 3
4 Interpreta Programas Máquinas Possui uma interpretação para cada operação ou teste que constituem o programa. 4
5 Computação Histórico do funcionamento da máquina para o programa e um dado valor inicial. Função Computada Função parcial induzida a partir da máquina e programa dados, a qual é definida sempre que, para um dado valor de entrada, existe uma computação finita (a máquina pára). 5
6 Programas Um conjunto estruturado de instruções que capacitam uma máquina a aplicar sucessivamente certas operações básicas e testes sobre os dados iniciais fornecidos com o objetivo de transformar esses dados numa forma desejável. Operações e Testes: Operações: F, G, H... Testes: T1, T2, T3... Operação Vazia: 6
7 Programa Monolítico É estruturado com somente desvios condicionais e incondicionais. Não emprega mecanismos auxiliares como iteração, sub-divisão ou recursão, de modo que toda a lógica do programa está contida em um único bloco: um monólito. Representados facilmente por um fluxograma. Partida Parada Operação Teste 7
8 Exemplo 1 Calcular a soma do números de 1 a 10 utilizando somente elementos do fluxograma. 8
9 início A = 0 A > 9 fim A = A + 1 9
10 Instruções Rotuladas Além da forma de um fluxograma, o programa pode ser representado como uma sequência de instruções rotuladas. Um rótulo ou etiqueta é uma cadeia finita de caracteres constituída de letras ou dígitos. Uma Instrução rotulada assume as formas: Operação: Indica a operação a ser executada seguida de um desvio incondicional para a instrução subsequente. r1: faça F vá_para r2 ou r1: faça vá para r2. Teste: Determina um desvio condicional, ou seja, que depende da avaliação de um teste. r1: se T então vá_para r2 senão vá_para r3. 10
11 Exemplo de Programa Monolítico 1.faça F vá_para 2 2.se T1 então vá_para 1 senão vá_para 3 3.faça G vá_para 4 4.se T2 então vá_para 5 senão vá_para 1 11
12 Definição de Rótulo, Instrução Rotulada 1. Um rótulo ou Etiqueta é uma cadeia de caracteres finita (palavra) constituída de letras ou dígitos. 2. Uma instrução Rotulada i é uma cadeia de caracteres finita (palavra) de uma das duas formas a seguir (suponha que F e T são identificadores de operação e teste, respectivamente e que r 1, r 2 e r 3 são rótulos): 2.1 Operação r 1 : faça F vá_para r 2 ou r 1 : faça vá_para r Teste r1: se T então vá_para r 2 senão vá_para r 3 12
13 Definição Formal de Programa Monolítico Um Programa Monolítico é um par P(I, r) I: Conjunto Finito de Instruções Rotuladas r: Rótulo inicial que distingue a instrução inicial em I Adicionalmente, relativamente ao conjunto I tem-se que: Não existem duas instruções diferentes com o mesmo rótulo. Um rótulo não associado a nenhuma instrução é um rótulo final. A estrutura oferecida pelos programas monolíticos é típica das linguagens de máquinas e de programas montadores (assembly), entretanto isto se reflete de diversas maneiras em linguagens de alto nível. 13
14 Exemplos de Programas Monolíticos 1. P 1 = (I 1,1) onde I 1 é o conjunto constituído pelas instruções rótuladas 1, 2, 3 e 4 do exemplo anterior. Neste caso 5 é o rótulo final. 2. P 2 = ({r 1 : faça vá_para r 2 }, r 1 ) onde r 2 é um rótulo final. 14
15 Programa Iterativo Substituem desvios incondicionais por estruturas cíclicas, permitindo um melhor controle e manutenção de programas. A noção de programa iterativo deu origem às técnicas de programação estruturada, inspirando toda uma geração de linguagens como Pascal. São baseados em três mecanismos de composição de instruções, encontrados em diversas linguagens: Algol 68, Pascal, Ada, Fortran 90, etc Sequencial: composição de dois programas, resultando em um terceiro, cujo efeito é a execução do primeiro e, após, a execução do segundo programa componente; Condicional: composição de dois programas, resultando em um terceiro, cujo efeito é a execução de somente um dos dois programas componentes dependendo do resultado do teste; Enquanto: composição de um programa, resultando em um segundo, cujo efeito é a execução, repetidamente, do programa componente enquanto o resultado de um teste for verdadeiro. 15
16 Definição Formal de Programa Iterativo Um Programa Iterativo P é indutivamente definido como segue: a) A operação constitui um programa iterativo; b) Cada identificador de operação constitui um programa iterativo; c) Composição sequencial. Se V e W são programas iterativos, então a composição sequencial denotada por V;W resulta em um programa iterativo cujo efeito é a execução de V e, após, a execução de W; d) Composição condicional. Se V e W são programas iterativos e se T é um identificador de teste, então a composição condicional denotada por (se T então V senão W) resulta em um programa iterativo cujo efeito é a execução de V se T é verdadeiro ou W se T é falso; 16
17 Definição de Programa Iterativo e) Composição enquanto. Se V é um programa iterativo e se T é um identificador de teste, então a composição enquanto denotada por enquanto T faça (V) resulta em um programa iterativo que testa T e executa V, repetidamente, enquanto o resultado do teste for o valor verdadeiro. Caso contrário, a iteração termina. f) Composição até. Se V é um programa iterativo e se T é um identificador de teste, então a composição até denotada por até T faça (V) resulta em um programa iterativo que testa T e executa V, repetidamente, enquanto o resultado do teste for o valor falso. Caso contrário, a iteração termina. Iteração é o processo chamado na na programação de de repetição de de uma uma ou ou mais mais ações. ações. 17
18 Programa Iterativo Parênteses podem ser empregados para mudar uma interpretação: (enquanto T faça V); W enquanto T faça (V; W) 18
19 Exemplo de um Programa Iterativo (se T1 então enquanto T2 faça (até T3 faça (V; W)) senão ) Observações: É trivial traduzir um programa iterativo para um fluxograma, mas a recíproca não é verdadeira. O uso de identação é interessante para facilitar o entendimento. 19
20 Como Podemos Representar um Programa Iterativo Enquanto como um Fluxograma? 20
21 Programa Recursivo Nas linguagens de programação em geral o conceito de programa recursivo aparece associado ao de sub-rotinas recursivas. Recursão é uma forma indutiva de definir programas. Sub-rotinas permitem a estruturação hierárquica dos programas, possibilitando níveis diferenciados de abstração. 21
22 Definição Expressão de Sub-Rotinas Uma Expressão de Sub-Rotinas, ou simplesmente Expressão é indutivamente definida como se segue: A operação vazia,, constitui uma expressão de sub-rotinas. Cada identificador de operação constitui uma expressão de subrotinas. Composição sequencial: Se D 1 e D 2 são expressões de sub-rotinas, então a composição sequencial denotada por: D 1 ; D 2 resulta em uma expressão de sub-rotinas cujo efeito é a execução de D 1 e, após a execução de D 2 ; Composição condicional: Se D 1 e D 2 são expressões de sub-rotinas e T é um identificador de teste, então a composição condicional denotada por: (se T então D 1 senão D 2 ) resulta em uma expressão de sub-rotinas cujo efeito é a execução de D 1 se T é verdadeiro ou D 2 se T é falso. 22
23 Definição Formal de Programa Recursivo Um Programa Recursivo P tem a seguinte forma: P é E 0, onde R 1 def E 1, R 2 def E 2,..., R n def E n Onde, para k є {1, 2,,n} E 0 : Expressão Inicial, que é uma expressão de subrotinas. E k : Expressão que define R k, isto é, a expressão que define a sub-rotina identificada por R k Adicionalmente, para cada identificador de sub-rotina referenciado em alguma expressão, existe uma expressão que o define. A operação vazia também é uma expressão de subrotinas. 23
24 Lógica Recursiva. Raciocínio Recursivo Pilha de Dados e Operações. Exemplo de Programa Recursivo: P é R; S, onde: R def F; (se T então R senão G; S) S def (se T então senão F; R) Exemplos Concretos: Fatorial Fibonacci Lista Recursiva 24
25 Máquinas As máquinas interpretam os programas suprindo todos os recursos necessários para realizar a computação que eles representam. Cada identificador de operação ou teste interpretado pela máquina deve ser associado a uma transformação na estrutura da memória e a uma função verdade respectivamente. Nem todo identificador de operação ou teste é definido em uma máquina. Para cada identificador de operação ou teste definido em uma máquina existe somente uma função associada. Adicionalmente a máquina deve descrever o armazenamento ou recuperação da informação na estrutura da memória. 25
26 Definição de Máquina Uma máquina é uma héptupla: M = ( V, X, Y, π X, π Y, Π F, Π T ), onde: V Conjunto de Valores de Memória X Conjunto de Valores de Entrada Y Conjunto de Valores de Saída π X Função de Entrada, tal que π X : X V π Y Função de Saída, tal que π Y : V Y Π F Conjunto de Interpretações de Operações tal que, para cada identificador de operação F interpretado por M, existe um única função π F : V V em Π F Π T Conjunto de Interpretações de Testes tal que, para cada identificador de teste T interpretado por M, existe uma única função: π T : V {verdadeiro, falso} em Π T Os conjuntos de interpretações podem ser vistos como conjuntos de funções, indexadas pelo subconjunto de identificadores de operações e testes para os quais a máquina está definida 26
27 Exemplo: Máquina de Dois Registradores Seja uma máquina com dois registradores, a e b, que assumem valores em N, com duas operações e um teste: Subtrair 1 de a, se a > 0. Adicionar 1 em b. Teste se a é zero. Adicionalmente valores de entrada são armazenados em a (zerando b) e a saída retorna o valor de b. Implementação dois_reg = ( N 2, N, N, armazena_a, retorna_b, {subtrai_a, adiciona_b}, {a_zero} ), onde: V = N 2 = Conjunto de valores de memória. X = N = Conjunto de valores de entrada Y = N = Conjunto dos valores de saída armazena_a: N N 2, tal que, para todo n є N, armazena_a(n) = (n, 0) retorna_b: N 2 N tal que, para todo n,m є N 2, retorna_b(n, m) = m subtrai_a: N 2 N 2 tal que, para todo (n, m) є N 2, subtrai_a(n, m) = (n-1, m), se n 0, subtrai_a(n, m) = (0, m), se n = 0. adiciona_b: N 2 N 2 tal que, para todo (n, m) є N 2, adiciona_b(n, m) = (n, m+1) a_zero: N 2 {verdadeiro, falso}, tal que, para todo (n, m) є N 2, a_zero(n, m) = verdadeiro, se n = 0, a_zero(n, m) = falso, se n 0, 27
28 Registradores (O registrador de uma CPU (unidade central de processamento) são unidades de memória capazes de armazenar n bits. Os registradores estão no topo da hierarquia de memória, sendo assim, são o meio mais rápido e caro de se armazenar um dado. São utilizados na execução de programas de computadores, disponibilizando um local para armazenar dados. Na maioria dos computadores modernos, quando da execução das instruções de um programa, os dados são movidos da memória principal para os registradores. Então, as instruções que utilizam estes dados são executadas pelo processador e, finalmente, os dados são movidos de volta para a memória principal.) 28
29 Definição: Programa para uma Máquina Diz-se que P é um programa para a máquina M se cada operação e teste em P corresponder a uma interpretação em M. Formalmente: Seja M = ( V, X, Y, π X, π Y, Π F, Π T ), uma máquina e P um programa onde P F e P T são conjuntos de operações e testes de P. P é um programa para a máquina M se e somente se: Para toda F em P F, existe uma única função π F : V V em Π F. Para todo T em P T, existe uma única função π T : V V em Π T. A operação vazia,, é interpretada em qualquer máquina. 29
30 Exemplo: Programa para a Máquina de Dois Registradores Os programas iterativo itv_b a e recursivo rec_b a são programas para a máquina dois_reg e atribuem o valor armazenado em a ao registrador b. Programa Iterativo itv_b a Até a_zero faça (subtrai_a; adiciona_b) Programa Recursivo rec_b a rec_b a é R onde R def (se a_zero então senão S;R), S def subtrai_a; adiciona_b 30
31 Computações e Funções Computadas Uma computação é, resumidamente, um histórico do funcionamento da máquina para o programa, considerando um valor inicial. Uma computação de um programa monolítico em uma máquina é um histórico de instruções executadas e o correspondente valor de memória. O histórico é representado como uma cadeia de pares onde: Cada par reflete um estado de máquina para o programa, ou seja, a função a ser executada e o valor corrente de memória. A cadeia reflete uma sequência de estados possíveis a partir do estado inicial. (instrução inicial e valor de memória considerado). 31
32 Definição: Computação de um Programa Monolítico em uma Máquina Seja M = ( V, X, Y, π X, π Y, Π F, Π T ), uma máquina e P = (I, r) um programa monolítico para M, onde L é o seu correspondente conjunto de rótulos. Uma computação do programa monolítico P para a máquina M é uma cadeia (finita ou infinita) de pares de L x V (s 0,v 0 )(s 1,v 1 )(s 2,v 2 )... onde s o = r é o rótulo inicial do programa P e v o é o valor inicial de memória e, para cada par (s k,v k ) da cadeia, onde K є (0,1,2,...), tem-se que (suponha que F é um identificador de operação, T é um identificador de teste e r', r'' são rótulos de L): a) Operação: a.1) Se s k é o rótulo de uma operação da forma: s k : faça F vá_para r então (s k+1, v k+1 ) = (r, π F (v k )) é par subsequente de (s k, v k ) na cadeia. a.2) Se s k é o rótulo de uma operação da forma s k : faça vá_para r, então (s k+1, v k+1 ) = (r, v k ) é par subsequente de (s k, v k ) na cadeia. 32
33 Definição: Computação de um Programa Monolítico em uma Máquina b) Teste: Se s k é o rótulo de um teste da forma s k : Se T então vá_para r senão vá_para r, então (s k+1, v k+1 ) é par subsequente de (s k, v k ) na cadeia, sendo que v k+1 = v k e: i. s k+1 = r se π T (v k ) = verdadeiro ii. s k+1 = r se π T (v k ) = falso Uma computação é dita Finita ou Infinita, se a cadeia que a define é finita ou infinita, respectivamente. 33
34 Observações A computação pode ser finita ou infinita, conforme a cadeia for finita ou infinita. Para um dado valor inicial de memória, a correspondente cadeia de computação é única, ou seja, a computação é determinística. Por que? Um teste e a operação vazia não alteram o conteúdo de memória. Em uma computação infinita não há rótulo final. 34
35 Exemplo: Computação Finita Computação Finita de Programa Monolítico na Máquina de Dois Registradores (s k, v k ) Ação (1,(3,0)) Instrução inicial e valor de entrada armazenado. (2,(3,0)) Em 1, como a<>0, desviou para 2. Em 2, subtraiu 1 do registrador a e desviou para 3. (3,(2,0)) 1. Se a_zero então vá_para 9 senão vá_para faça subtrai_a vá_para faça adiciona_b vá_para 1. (1,(2,1)) Em 3, adicionou 1 ao valor de b e desviou para 1, (2,(2,1)) (3,(1,1)) Em 1, como a<>0, desviou para 2. Em 2, subtraiu 1 do registrador a e desviou para 3. (1,(1,2)) Em 3, adicionou 1 ao valor de b e desviou para 1, (2,(1,2)) (3,(0,2)) Em 1, como a<>0, desviou para 2. Em 2, subtraiu 1 do registrador a e desviou para 3. (1,(0,3)) Em 3, adicionou 1 ao valor de b e desviou para 1, Em 1, como a=0, desviou para 9. (9,(0,3)) 35
36 Exemplo: Computação Infinita 1. faça adiciona_b vá_para 1. Porque é infinita? 36
37 Computação de um Programa Recursivo em uma Máquina A computação de um programa recursivo em uma máquina é análoga a de um monolítico. O histórico é representado na forma de uma cadeia de pares onde: Cada par reflete um estado da máquina para o programa, ou seja, a expressão de sub-rotina a ser executada e o valor corrente da memória; A cadeia reflete uma sequência de estados possíveis a partir do inicial. 37
38 Definição: Computação de um Programa Recursivo em uma Máquina Seja M = ( V, X, Y, π X, π Y, Π F, Π T ), uma máquina e P um programa recursivo para M, tal que: P é E 0 onde R 1 def E 1, R 2 def E 2,..., R n def E m. Uma computação do programa recursivo P na máquina M é uma cadeia (finita ou infinita) de pares da forma: (D 0, v 0 )(D1, v1)(d2, v2)... onde (D 0, v 0 ) é tal que D 0 = E 0 ; e v 0 é o valor inicial da máquina. 38
39 Definição: Computação de um Programa Recursivo em uma Máquina Para cada par (D k, v k ), supondo que F é um identificador de operação, T é um identificador de teste e C, C 1 e C 2 são expressões de sub-rotinas: Caso 1: D k = ; C (D k+1, v k+1 ) = (C, v k ) é par subsequente de (D k, v k ) na cadeia. Caso 2: D k = F; C (D k+1, v k+1 ) = (C, πf(v k )) é par subsequente de (D k, v k ) na cadeia. Caso 3: D k = R i ; C (D k+1, v k+1 ) = (E i ;C, v k ) é par subsequente de (D k, v k ) na cadeia. Caso 4: D k = (C1; C2); C (D k+1, v k+1 ) = (C1;(C2;C), v k ) é par subsequente de (D k, v k ) na cadeia. Caso 5: D k = E k = (Se T então C1 senão C2); C (D k+1, v k+1 ) é par subsequente de (D k, v k ) na cadeia, sendo que: V k+1 = v k D k+1 = C 1 ; C se π T (v k ) é verdadeiro D k+1 = C 2 ; C se π T (v k ) é falso 39
40 Definição: Computação de um Programa Recursivo em uma Máquina Observações: A computação pode ser finita ou infinita conforme a cadeia for finita ou infinita. A computação é determinística (por quê?) Teste ou referência a uma sub-rotina não alteram o valor da memória. Em uma computação finita, a expressão vazia ocorre no último par da cadeia e não ocorre em nenhum outro par. Em uma computação infinita, a expressão vazia não ocorre em nenhum par. 40
41 Exemplo: Computação Finita de Programa Recursivo Considere o programa a seguir: duplica é R onde R def (se zero então senão sub; R; ad; ad) Para a seguinte máquina: um_reg = (N, N, N, id N, {ad, sub},{zero}) Onde: N corresponde, simultaneamente, aos conjuntos de valores de memória, entrada e saída. Id N : é a função de entrada e de saída ad: N N é interpretação tal que, para qualquer n є N, ad(n)=n+1 sub: N N é interpretação tal que, para qualquer n є N: sub(n) = n-1, se n 0; sub(n) = 0, se n = 0. Zero: N {verdadeiro, falso} é interpretação tal que, para qualquer n є N; zero(n) = verdadeiro, se n=0; zero(n)=falso, caso contrário. 41
42 Exemplo: Computação Finita de Programa Recursivo Para o valor inicial de memória 3, a correspondente computação finita deve ser representada como: (R; ;3) ((se zero então senão (sub; R; ad; ad));, 3) ((sub;r;ad;ad);,3) (sub; (R;ad;ad);,3) ((R;ad;ad);,2) (R; (ad;ad);,2) ((se zero então senão (sub;r;ad;ad)); (ad;ad);, 2) ((sub;r;ad;ad);(ad;ad);, 2) (sub; (r;ad;ad) ; (ad;ad);,2) ((R;ad;ad);(ad;ad);,1) Valor de entrada armazenado Caso 3 Como n 0, executa senão Caso 4, composição sequencial Subtraiu 1 da memória Caso 4, composição sequencial Caso 3 Como n 0, executa senão Caso 4, composição sequencial Subtraiu 1 da memória 42
43 Exemplo: Computação Finita de Programa Recursivo (R; (ad,ad) ; (ad;ad) ;,1) Caso 4, composição sequencial ((se zero então senão (aub;r;ad;ad)); (ad;ad); (ad;ad);,1) ((sub;r;ad;ad));(ad;ad);(ad;ad);,1) (sub; (r;ad;ad);(ad;ad);(ad;ad);, 1) ((R;ad;ad);(ad;ad);(ad;ad);,0) (R; (ad;ad);(ad;ad);(ad;ad);,0) ((se zero então senão (sub;r;ad;ad;));(ad;ad); (ad;ad);(ad;ad);, 0) Caso 3 Como n 0, executa senão Caso 4, composição sequencial Subtraiu 1 da memória Caso 4, composição sequencial Caso 3 ( ; (ad;ad);(ad;ad);(ad;ad); ;0) Como n=0, executa então ((ad;ad);(ad;ad);(ad;ad);,0) Caso 1 (ad;(ad;(ad;ad);(ad;ad); ),0) ((ad;(ad;ad);(ad;ad); ),1) (ad;((ad;ad);(ad;ad);,1) (((ad;ad);(ad;ad); ),2) (ad;(ad;(ad;ad); ),2) ((ad;(ad;ad); ). 3) (ad; ((ad;ad); ), 3) (((ad;ad); ), 4) (ad;((ad); ). 4) (((ad); ), 5) (ad; ( ), 5) Caso 4, composição sequencial Adicionou 1 na memória Caso 4, composição sequencial Adicionou 1 na memória Caso 4, composição sequencial Adicionou 1 na memória Caso 4, composição sequencial Adicionou 1 na memória Caso 4, composição sequencial Adicionou 1 na memória Caso 4, composição sequencial (( ),6) Adicionou 1 na memória (, 6) Fim da recursão 43
44 Exemplo: Computação Finita de Programa Recursivo Note-se que o valor final da memória é o valor inicial duplicado. Observe-se que, usando a noção de recursão, não foi necessário utilizar duas células de memória, uma para controlar o ciclo e outra para calcular o resultado. De fato, a facilidade de recursão é usada para determinar quantas vezes a operação ad necessita ser executada. 44
45 Exercícios 1. Usando apenas os símbolos de fluxograma, representar um programa monolítico para calcular a soma dos 100 primeiros números ímpares. 2. Fazer o fluxograma do programa iterativo do exemplo dado em aula. 3. Desenhe um fluxograma que corresponde a cada um dos seguintes programas: 1. P 2 = ({r 1 : faça vá_para r 2 }, r 1 ); 2. Composição até (programa iterativo); 3. Programa sem instrução alguma; 4. Programa em loop. 4. Por que pode-se afirmar que a tradução de um programa iterativo para um monolítico é trivial? 5. Por que é possível afirmar que a computação de um programa monolítico em uma máquina, para um dado valor inicial de memória, é determinística? 6. Dê a definição forma da função computada (W,M) de um programa iterativo W em uma máquina M. 45
46 Exercícios 1. Traduza o fluxograma do programa monolítico abaixo em um programa recursivo. Início F V T1 F G V T2 F Fim Fim V T1 F F 46
47 Exercícios 1. Traduza os fluxogramas dos programas monolíticos abaixo programas recursivos. 47
Teoria da Computação. Unidade 1 Conceitos Básicos. Referência Teoria da Computação (Divério, 2000)
Unidade 1 Conceitos Básicos Referência (Divério, 2000) Conceitos Básicos Linguagem Conceito fundamental Forma precisa de expressar problemas Permite um desenvolvimento formal adequado ao estudo da computabilidade
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Interpreta os programas de acordo com os dados fornecidos. É capaz de interpretar um programa desde que possua
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 05 Computações Prof.ª Danielle Casillo Computação Será visto como as definições de programas e máquinas caminham
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 03 Programas (Monolítico e Iterativo) Prof.ª Danielle Casillo Programas, Máquinas e Computações Diferentes
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferentes computadores podem ter diferentes arquiteturas e os diversos tipos de linguagem de programação.
Leia maisTeoria da Computação. Máquinas, Computações e Funções Computadas
Cristiano Lehrer Introdução (1/2) O objetivo de uma máquina é suprir todas as informações necessárias para que a computação de um programa possa ser descrita. Portanto, cabe à máquina suprir o significado
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 04 Programa Recursivo e Máquinas Prof.ª Danielle Casillo Funções recursivas Alguma função é recursiva quando
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 08 Equivalência de programas Parte 2 Prof.ª Danielle Casillo Poder computacional dos diversos tipos de programas
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Os teoremas citados na aula anterior, podem dar a falsa impressão de que o poder computacional da classe dos
Leia maisResolução Exe 2.12 Monolítico Recursivo
Resolução Exe 2.12 Monolítico Recursivo Recursivo P R é R 1 onde R 1 def (se T1 então R 2 senão R 3 ) R 2 def F; R 3 R 3 def (se T2 então R 4 senão R 7 ) R 4 def G; R 5 R 5 def (se T1 então R 7 senão R
Leia maisMicroprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios
Microprocessadores I ELE 1078 Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Grupos de Instruções do 8085 As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
Leia maisTeoria da Computação. Aula 01
Teoria da Computação Aula 01 Celso Olivete Júnior olivete@fct.unesp.br www.fct.unesp.br/docentes/dmec/olivete/tc 1 Professor Celso Olivete Júnior Bacharelado em Ciência da Computação (Unoeste-2002) Mestrado
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo NORMA (NumberTheOreticRegisterMAchine) Possui como memória um conjunto infinito de registradores naturais e
Leia maisExistem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.
Aula 3 SOFTWARE (programas) Um programa (software) consiste em uma sequência de instruções escritas numa linguagem precisa chamada linguagem de programação. Estas instruções são traduzidas em um compilador,
Leia maisFundamentos de Programação
Fundamentos de Programação CP41F Aula 2 Prof. Daniel Cavalcanti Jeronymo Conceito de algoritmo. Raciocínio lógico na construção de algoritmos. Estrutura de algoritmos. Universidade Tecnológica Federal
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções
Leia maisEQUIVALÊNCIA DE PROGRAMAS E MÁQUINAS
EQUIVALÊNCIA DE PROGRAMAS E MÁQUINAS Édson Wenning¹, Elias Lampert², Gustavo Claudy³, Pedro E. Camera 4. ¹Discente do Curso Ciência da Computação - Universidade de Cruz Alta ²Discente do Curso Ciência
Leia maisCONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO
CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO ROTEIRO 1. INTRODUÇÃO 2. LINGUAGENS IMPERATIVAS 1. CONCEITO 2. PARADIGMA IMPERATIVO 3. ORIGENS 4. MODELO COMPUTACIONAL 1. ARQUITETURA DE VON NEUMANN 2. CARACTERISTICAS
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Proposta por Alan Turing em 1936; É universalmente conhecida e aceita como formalização de algoritmo; Teoria
Leia maisTeoria da Computação. Unidade 3 Máquinas Universais. Referência Teoria da Computação (Divério, 2000)
Teoria da Computação Referência Teoria da Computação (Divério, 2000) 1 L={(0,1)*00} de forma que você pode usar uma Máquina de Turing que não altera os símbolos da fita e sempre move a direita. MT_(0,1)*00=({0,1},{q
Leia maisInformática I. Aula 14. Aula 14-10/10/2007 1
Informática I Aula 14 http://www.ic.uff.br/~bianca/informatica1/ Aula 14-10/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Paradigmas para linguagens de Programação
Leia maisCompiladores. Introdução à Compiladores
Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos
Leia maisLógica para programação II Seção 1 - Histórico e Introdução Primeiros Programas
Lógica para programação II Seção 1 - Histórico e Introdução Primeiros Programas Prof. Me. Hélio Esperidião Ferreira Objetivos: (Entender os principais conceitos atuais e históricos sobre o desenvolvimento
Leia maisIntrodução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?
Leia maisMáquinas Universais. Máquina de Turing. Celso Olivete Júnior.
Máquinas Universais Máquina de Celso Olivete Júnior olivete@fct.unesp.br http://www2.fct.unesp.br/docentes/dmec/olivete/ Roteiro Hipótese de Church - Máquinas Universais: Máquina de Máquina de : Noção
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo
Leia maisProgramação Procedimental
Programação Procedimental Maria Adriana Vidigal de Lima Universidade Federal de Uberlândia - 2013 1 Escrita de Algoritmos 1.1 Técnicas de Programação e Algoritmos Na elaboração de programas maiores e complexos
Leia maisInstruções. Maicon A. Sartin
Instruções Maicon A. Sartin SUMÁRIO Introdução Instruções Formatos de instruções Conjuntos de instruções Execução de instruções Introdução a Linguagem de Montagem Introdução a Linguagem de Montagem Níveis
Leia maisINF 1005 Programação I
INF 1005 Programação I Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Conceito de Algoritmo Pseudocódigo Tipos de
Leia maisTeoria da Computação. Máquinas Universais Máquina com Pilhas
Máquinas Universais Máquina com Pilhas Cristiano Lehrer Introdução A Máquina com Pilhas diferencia-se das Máquinas de Turing e de Post principalmente pelo fato de possuir uma memória de entrada separada
Leia maisProcedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens
Procedimentos e Algorítmos Programas e Linguagens de Programação Tese de Church-Turing Formas de Representação de Linguagens 1 Introdução Estudar computação do ponto de vista teórico é sinônimo de caracterizar
Leia maisCapítulo 2: Procedimentos e algoritmos
Capítulo 2: Procedimentos e algoritmos Para estudar o processo de computação de um ponto de vista teórico, com a finalidade de caracterizar o que é ou não é computável, é necessário introduzir um modelo
Leia maisIntrodução à Programação
Introdução à Programação Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina.
Leia maisLinguagens Regulares. Prof. Daniel Oliveira
Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões
Leia maisIntrodução aos Algoritmos
Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado
Leia maisEstruturas de Dados. Prof.: Carlos Alberto Página da Disciplina:
Estruturas de Dados Prof.: Carlos Alberto Página da Disciplina: http://alged.webnode.com/ E-mail: carlos36_batista@yahoo.com.br Estruturas de dados Programa da disciplina Estruturas de dados - referências
Leia maisALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br
Leia maisTÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke
TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE Professora: Isabela C. Damke isabeladamke@hotmail.com Linguagem de Programação Uma linguagem de programação é um conjunto de símbolos (
Leia maisAula teórica 7. Preparado por eng.tatiana Kovalenko
Aula teórica 7 Tema 7. Introdução a Programação Ø Linguagens de Programação Ø LP Java ØEstrutura de um programa em Java ØIdentificadores, variáveis e constantes. ØTipos de dados básicos Preparado por eng.tatiana
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferencia-se das máquinas de Turing e Post principalmente pelo fato de possuir a memória de entrada separada
Leia maisIntrodução aos Algoritmos
Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado
Leia maisNoções de algoritmos - Aula 1
Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir
Leia maisRecursividade, Tentativa e Erro
Recursividade, Tentativa e Erro Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com BCC402 Aula 07 Algoritmos e Programação Avançada Na aula anterior Prova 2 Na aula de hoje Técnicas
Leia maisEste conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução.
Capítulo 7 Controle de Fluxo de Execução Até o momento os algoritmos estudados utilizam apenas instruções primitivas de atribuição, e de entrada e saída de dados. Qualquer conjunto de dados fornecido a
Leia maisAula 05: - Recursão (parte 1)
MCTA028 Programação Estruturada Aula 05: - Recursão (parte 1) Prof. João Henrique Kleinschmidt Material elaborado pelo prof. Jesús P. Mena-Chalco 3Q-20108 Recursão: Se você ainda não entendeu; Ver: "Recursão".
Leia maisProgramação Estruturada Aula - Introdução a Linguagem de Programação
Programação Estruturada Aula - Introdução a Linguagem de Programação Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br ORGANIZAÇÃO BÁSICA DE UM COMPUTADOR 2 ORGANIZAÇÃO BÁSICA DE UM COMPUTADOR
Leia maisSSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Leia maisCURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS
CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS PROFESSOR : Romilson Lopes Sampaio Introdução a Lógica de Programação
Leia maisIntrodução a Lógica de Programação
Introdução a Lógica de Programação O processo de programação é uma conversa controlada entre um ser humano (tecnicamente preparado) e um computador Linguagem Linguagem de baixo nível Grande dificuldade,
Leia maisProgramação de Computadores III
Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157
Leia maisINF A: Introdução à programação
INF1025.33A: Introdução à programação Aula 0: Aula inaugural Guilherme F. Lima Dep. Informática, PUC-Rio 2017.2 Sumário 1. Apresentação da disciplina 2. Algoritmos e computadores 3. HIP: Um computador
Leia maisFluxogramas. Vanessa Braganholo
Fluxogramas Vanessa Braganholo vanessa@ic.uff.br Antes de vermos Fluxogramas...... vamos conhecer um pouco sobre a evolução das linguagens de programação 2 Paradigmas de Programação Definem regras básicas
Leia maisProgramação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO
Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO Comando WHILE O comando while executa um bloco de comandos enquanto a condição testada for verdadeira (diferente
Leia maisProgramação de Computadores:
Instituto de C Programação de Computadores: Pseudocódigo e Estruturas Básicas de Controle Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Roteiro
Leia maisFluxogramas. Leonardo Gresta Paulino Murta.
Fluxogramas Leonardo Gresta Paulino Murta leomurta@ic.uff.br Antes de vermos Fluxogramas......vamos conhecer um pouco sobre a evolução das linguagens de programação Leonardo Murta Fluxogramas 2 Paradigmas
Leia maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
Leia maisCONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)
CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) 1 LINGUAGENS Constituída de seqüência de zeros (0) e uns (1) Cada instrução em ASSEMBLY constitui-se em um mnemônico (uma forma fácil de se lembra) de uma
Leia maisSEBENTA INTRODUÇÃO Á ALGORITMIA
SEBENTA INTRODUÇÃO Á ALGORITMIA O desenvolvimento de programas para computador está sempre baseado na tarefa de programar um computador para seja resolvido um problema ou executada uma função e assim dar
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação
Universidade Federal de Uberlândia Faculdade de Computação Conceitos básicos de algoritmos Prof. Renato Pimentel 1 Computação Dados Informações vindas de usuários ou de outras máquinas; Processamento transformação
Leia maisInstituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I
LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I Prof. Bruno E. G. Gomes Uma variável em um algoritmo pode ser vista como uma gaveta. A declaração de uma variável reserva uma gaveta (posição) de um certo
Leia maisProgramação I Estruturas de Repetição
Programação I Estruturas de Repetição Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Expressões compactas Frequentemente existe a necessidade de escrever expressões da forma:
Leia maisSistema Computacional
Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes reinaldo@cefet-al.br O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.
Leia maisIII.2 - Princípios de Arquitetura
Conjunto de Instruções e Modo de Endereçamento Ciclo de busca decodificação execução de instruções Programação de um processador Arquitetura de Von Neumann e Componentes Arquiteturas 4, 3, 2, 1 e 0 Tabela
Leia maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisBCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1 Na aula anterior Prova 2 Na aula de hoje Técnicas básicas de contagem; Tentativa e Erro; Recursividade.
Leia maisApêndice A. Pseudo-Linguagem
Apêndice A. Pseudo-Linguagem Apostila de Programação I A.1 Considerações Preliminares Os computadores convencionais se baseiam no conceito de uma memória principal que consiste de células elementares,
Leia maisProgramação I Apresentação
Programação I Apresentação Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação
Leia maisAula 3: Algoritmos: Formalização e Construção
Aula 3: Algoritmos: Formalização e Construção Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de
Leia mais1. Uma linguagem de uma máquina de Turing
Linguagem de uma Máquina de Turing 1. Uma linguagem de uma máquina de Turing, é. 2. Linguagens aceitas por uma MT são chamdas recursivamente enumeráveis. O recursivo nesta caso significa decidível, ou
Leia maisAula 05: - Recursão (parte 1)
MCTA028 Programação Estruturada Aula 05: - Recursão (parte 1) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 3Q-20107 1 Recursão: Se você ainda não entendeu; Ver: "Recursão". Efeito Droste Anuncio
Leia maisEstruturas de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números
Leia maisAula 5 Controle do Fluxo de Execução
Aula 5 Controle do Fluxo de Execução 1. Introdução Muitas vezes precisamos executar ações diferentes em função dos dados de entrada. Até o momento só trabalhamos com um único fluxo de execução, veremos
Leia maisEngenharia Civil. Introdução à Programação
Engenharia Civil Introdução à Programação Como se faz um algoritmo computacional? Exemplo Exemplo Será que o algoritmo vai funcionar? Questões: Área de uma circunferência programa area AREA, RAIO: real
Leia maisIntrodução ao Fortran 90-5
Introdução ao Fortran 90-5 Departamento de Física UFPel Definição A estrutura de repetição DO fornece um mecanismo para controle de desvio de fluxo, que permite que um bloco de comandos seja executado
Leia maisCONJUNTO DE INSTRUÇÕES
CONJUNTO DE INSTRUÇÕES 1 CARACTERÍSTICAS DE INSTRUÇÕES DE MÁQUINA Quando um programador usa uma linguagem de alto-nível, como C, muito pouco da arquitetura da máquina é visível. O usuário que deseja programar
Leia maisCONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)
CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) 1 LINGUAGENS Conhecida pelo PROCESSADOR Conhecida pelo Usuário COMPILADOR LINGUAGEM DE ALTO NÍVEL LINGUAGEM ASSEMBLY 2 INSTRUÇÕES EM ASSEMBLY Para programar
Leia maisLinguagens de Programação
Linguagens de Programação Paradigma Imperativo Matheus Hafner Tiago Xavier CET 087 - Conceitos de Linguagens de Programação (CLP) 10 de novembro de 2011 Sumário 1 Introdução 2 Paradigma imperativo Modelo
Leia maisIntrodução ao Fortran 90-3
Introdução ao Fortran 90-3 Departamento de Física UFPel Controles de Fluxo de Execução Definição Estruturas (ou blocos) de programação que permitem controlar o fluxo de execução de um programa, além da
Leia maisAlgoritmos e Técnicas de Programação
Algoritmos e Técnicas de Programação Estrutura, Visualg e Variáveis filipe.raulino@ifrn.edu.br Programação Estruturada A programação estruturada (Top-Down) estabelece uma disciplina de desenvolvimento
Leia maisLINGUAGEM C: COMANDOS DE REPETIÇÃO
LINGUAGEM C: COMANDOS DE REPETIÇÃO Prof. André Backes ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição permite que uma sequência de comandos seja executada repetidamente, enquanto determinadas condições
Leia maisIntrodução a Computação
Edirlei Soares de Lima Introdução a Computação Aula 02 Lógica de Programação Lógica de Programação Lógica de Programação é a técnica de criar sequências lógicas de ações para atingir
Leia maisMAC2166 Introdução à Computação Aula 1 Como Funciona um Computador
MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador Kelly Rosa Braghetto DCC IME USP 25 de março de 2014 MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador DCC IME USP 1
Leia mais2. A influência do tamanho da palavra
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de
Leia maisTécnicas de projeto de algoritmos: Indução
Técnicas de projeto de algoritmos: Indução ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008
Leia mais2. A influência do tamanho da palavra
PROCESSAMENTO 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante
Leia mais# Estrutura de Dados # Aula 08 Recursão (conceito, utilização, exemplos) Prof. Leinylson Fontinele Pereira
# Estrutura de Dados # Aula 08 Recursão (conceito, utilização, exemplos) Prof. Leinylson Fontinele Pereira Na aula anterior... Alocação Dinâmica de Memória Introdução 3 O que vamos aprender? Recursividade
Leia maisPROGRAMAÇÃO I. Introdução
PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação
Leia maisLinguagens Livres de Contexto
Universidade Católica de Pelotas Centro Politécnico Bacharelado em Ciência da Computação 364018 Linguagens Formais e Autômatos TEXTO 4 Linguagens Livres de Contexto Prof. Luiz A M Palazzo Maio de 2011
Leia maisMicrocontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk
Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso
Leia mais- Aula 01, 02, 03 e 04 Apresentação da disciplina.
1 - Aula 01, 02, 03 e 04 Apresentação da disciplina. Disciplina: Algoritmos (Disciplina é pré-requisito para outras disciplinas). Plano de Ensino: Estrutura Sequencial, Estrutura de Decisão (Desvio Condicional
Leia maisNotas de Aula Guilherme Sipahi Arquitetura de Computadores
Notas de Aula Guilherme Sipahi Arquitetura de Computadores Endereçamento O Campo de endereço em uma instrução é pequeno. Para referenciar uma faixa de endereços maior na memória principal, ou em alguns
Leia maisProgramação de Computadores III
Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Professor Hugo de Oliveira Barbalho hbarbalho@ic.uff.br Material produzido pelo professor: Leandro Augusto Frata Fernandes
Leia maisMC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016
MC102 Aula 26 Recursão Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Indução 2 Recursão 3 Fatorial 4 O que acontece na memória 5 Recursão Iteração 6 Soma em um Vetor 7 Números
Leia maisProf. A. G. Silva. 25 de setembro de Prof. A. G. Silva INE5603 Introdução à POO 25 de setembro de / 35
INE5603 Introdução à POO Prof. A. G. Silva 25 de setembro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 25 de setembro de 2017 1 / 35 Baseado em materiais da Recursividade Unisinos, Cesar Tacla (UTFPR),
Leia mais3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.4. Estruturas de Controle 3.4.1. Comandos
Leia mais