Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;
|
|
- Micaela Campos Bennert
- 6 Há anos
- Visualizações:
Transcrição
1 1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e armazenar informações e dados temporários na memória RAM. Ainda ele costuma se comunicar com o mundo externo para ler e enviar informações. Por exemplo, ler uma tecla e escrever na tela ou impressora, acionar dispositivos, lâmpadas e etc.. O programa é armazenado na memória ROM como uma série de códigos compatíveis com o microprocessador, ou seja, seu conjunto de instruções. O conjunto de instruções é o grupo de códigos que um microprocessador é capaz de entender. 1.1 Arquiteturas de computadores Essencialmente podemos dividir os microprocessadores entre os da arquitetura Von-Neumann e os da arquitetura Harvard. Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador; Dados da memória e dispositivos são acessados da mesma forma O programador tem controle sobre a organização da memória Dificulta a operação paralela de diversas instruções Um único barramento de acesso pode ser um gargalo, dados e instruções devem ser acessados um de cada vez Instruções de programa podem ser sobrescritas por erro / Programa pode se auto modificar ou criar novos programas Arquitetura Harvard Acesso paralelo a dados e instruções Desenho do microprocessador é mais complexo e mais caro As memórias podem usar larguras de dados diferentes (ex 14 bits para instruções e 8 bits para dados) Memória de dados não pode ser usada para programas Internamente, um microprocessador possui diversos dispositivos diferentes 1
2 Registradores são equivalentes a memória RAM e servem para armazenar os dados que serão processados pela ULA. Contador de Programa Aponta para a posição da memória de programa que contém a instrução a ser executada Unidade Lógica Aritmética (ULA) Realiza as operações aritméticas, lógicas, comparações e tomadas de decisão. A ULA trabalha com os dados armazenados nos registradores. Unidade de Controle Controla o fluxo de informações de forma a executar corretamente a instrução Exemplo de funcionamento Durante a execução de uma instrução, o microprocessador segue aproximadamente o seguinte fluxo 1. O endereço do Contador de Programa é usado para endereçar a memória ROM 2. A instrução é lida da memória ROM 3. O Contador de Programa é incrementado 4. A Unidade de Controle determina as ligações adequadas e configura a ULA para que a instrução seja executada corretamente (a) Se for uma leitura da memória RAM para um registrador, configura o endereço a ser acessado e recupera a informação (b) Se for uma operação com a ULA, faz as configurações adequadas (c) Se for uma instrução de desvio do programa, modifica adequadamente o Contador de Programa 5. A instrução é executada e o processador reinicia o ciclo em uma nova instrução Microcontroladores De modo simplificado, um microcontrolador possui em uma única pastilha, o microprocessador, as memórias ROM e RAM, e outros periféricos. Dessa forma, um microcontrolador permite construir um sistema computadorizado completo. 2
3 2 Linguagens de programação Cada microprocessador possui um conjunto único de instruções que realiza, é o chamado conjunto de instruções. Podemos escrever um programa diretamente na linguagem assembler do processador (cada código em assembler corresponde a uma instrução do conjunto de instruções), porém é muito mais fácil utilizar uma linguagem de programação de mais alto nível. Em uma linguagem de nível mais alto, os comandos se assemelham com a nossa linguagem de comunicação. Na plataforma Arduíno, utilizamos a linguagem C++, porém muito da complexidade é suprimida. Na maioria dos casos, bastará apenas definir duas funções. 2.1 Linguagem C para Arduíno Comentários Toda linguagem de programação possui alguma forma para inserir texto que não será interpretado, servindo apenas como uma descrição para facilitar a vida do programador. São os chamados comentários. Em linguagem C/C++, existem duas formas para se escrever um comentário 1. Usando barras duplas //. Todo código escrito após duas barras até o final da linha é considerado como comentário 2. Usando /* e */. Usamos /* para abrir um bloco de comentário e */ para fechar esse bloco que pode se estender por várias linhas. Tudo o que for escrito entre esses dois comandos é considerado como comentário Variáveis A linguagem C/C++ é uma linguagem tipada, ou seja, devemos declarar o tipo de dados que estamos trabalhando. Podemos definir nossos próprios tipos de dados, e também utilizar os tipos padrão da linguagem, como os definidos pelas palavras reservadas 1. byte: Ocupa um byte de memória e pode representar valores de 0 a char: Equivalente a um byte, normalmente usamos para armazenar letras e outros elementos de texto. 3. short: Representa um número inteiro, ocupando dois bytes. Permite armazenar valores desde até unsigned short: Representa um número inteiro (apenas positivo), ocupando dois bytes. Permite armazenar valores desde 0 até long: Representa um número inteiro, ocupando quatro bytes. Permite armazenar valores desde até unsigned long: Representa um número inteiro (apenas positivo), ocupando quatro bytes. Permite armazenar valores desde 0 até int: Na plataforma Arduíno equivale a um short (em PCs normalmente equivale a um long) 8. unsigned int: Na plataforma Arduíno equivale a um unsigned short (em PCs normalmente equivale a um unsigned long) 9. float: Representa um número em ponto flutuante, ocupando 4 bytes. 10. arrays: Arrays podem ser vistos como um agrupamento de variáveis de um certo tipo. São úteis para armazenar uma quantidade conhecida de valores ou símbolos para construir um texto (string). Na linguagem C/C++, usamos colchetes [] para declarar e acessar elementos dentro de um array. 11. void: Não representa uma variável em si, mas um tipo de dado, significando a ausência de valor. Normalmente usado para declarar funções que não retornam valor. 12. bool: Representa um valor booleano (verdadeiro ou falso) e pode assumir os valores true ou false. Para declarar uma variável, devemos primeiro informar o tipo, depois o nome da variável (vamos usar esse nome para chamar a variável durante o programa) e terminar a linha com um ; 3
4 / / Essa l i n h a é um c o m e n t á r i o / * Esse b l o c o é um c o m e n t á r i o a i n d a é um c o m e n t á r i o... * / b y t e a ; / / d e c l a r a a v a r i a v e l a do t i p o b y t e c h a r t e x t o [ 2 0 ] ; / / d e c l a r a a v a r i a v e l t e x t o com a t é 20 c a r a c t e r e s i n t cont_1 ; / / d e c l a r a a v a r i a v e l c o n t _ 1 do t i p o i n t ( s h o r t no Arduíno ) u n s i g n e d i n t cont_2 ; / / d e c l a r a a v a r i a v e l c o n t _ 2 do t i p o u n s i g n e d i n t f l o a t p i ; / / d e c l a r a a v a r i a v e l p i do t i p o f l o a t Blocos Na linguagem C/C++ é possível agrupar porções do programa em blocos. Um bloco é construído ao se escrever os comandos dentro de chaves { e. Variáveis declaradas dentro de um bloco são acessíveis somente dentro do bloco. / / um b l o c o { i n t a ; / / d e c l a r a d a d e n t r o do b l o c o a = 1 0 ; d e l a y ( a ) ; i n t a ; / / o u t r a v a r i a v e l Funções Funções são uma forma conveniente para se agrupar e compartimentalizar um programa. Todos os comandos agrupados devem ser escritos dentro de um bloco de chaves iniciado por { e terminado por. Uma função em C/C++ pode receber parâmetros de entrada e pode retornar um valor de saída (usando a palavra reservada return). Assim como as variáveis, também as funções devem ser declaradas. A declaração de uma função inicia com o tipo de dado que ela retorna, seguida pelo nome da função e pela lista de parâmetros de entrada, escritos entre parênteses. Em seguida, virão os comandos correspondente à função. Cabe notar que para a declaração de funções que não retornam nenhum tipo de valor, usamos o tipo void. / / Funcao p a r a somar d o i s numeros i n t e i r o s a e b i n t soma ( i n t a, i n t b ) { i n t s ; s = a + b ; r e t u r n s ; / / Funcao p a r a e s p e r a r em segundos void e s p e r a _ s e g u n d o s ( i n t tempo ) { i n t m i l i s e g u n d o s ; m i l i s e g u n d o s = tempo *1000; d e l a y ( m i l i s e g u n d o s ) ; 4
5 Como já vimos em outras oportunidades, na plataforma Arduíno basta definir duas funções. A função setup que é executada apenas uma vez ao inicio do programa, e a função loop que é executada continuamente. Outras funções adicionais podem ser definidas caso seja conveniente agrupar trechos de programa Escopo Escopo diz respeito aos pontos do código em que uma variável pode ser acessada. Variáveis declaradas em um contexto ou bloco (dentro de chaves {), normalmente são acessíveis apenas dentro bloco e de seus sub blocos. Isso significa que podemos escrever duas funções utilizando variáveis temporárias de mesmo nome e uma não interfere na outra (apesar do mesmo nome, o programa as enxerga como diferentes). Para que uma mesma variável possa ser acessada por diversas funções, devemos declarar ela no corpo do programa, tornando-a uma variável global. i n t v a r _ g l o b a l ; v a r _ g l o b a l =10; / / OK i n t v a r _ l o c a l _ a = 1 ; / / novo sub b l o c o { i n t v a r _ l o c a l _ b ; i n t v a r _ l o c a l _ c ; v a r _ l o c a l _ b = 2 ; v a r _ l o c a l _ c = soma ( v a r _ l o c a l _ a, v a r _ l o c a l _ b ) ; / / OK v a r _ l o c a l _ c = v a r _ g l o b a l + v a r _ l o c a l _ c / / OK v a r _ l o c a l _ a = v a r _ l o c a l _ c ; / / ERRADO i n t soma ( i n t a, i n t b ) { i n t s ; s = a + b ; r e t u r n s ; Exercícios Determine o valor da variável c após o final da rotina loop i n t b ; i n t a = 1 ; i n t c ; b = 1 0 ; c = a + b ; 5
6 Determine o valor da variável c após o final da rotina loop i n t b ; i n t c ; b = 1 0 ; aumenta_b ( 1 0 ) ; c = b ; void aumenta_b ( i n t v a l o r ) { b = b + v a l o r ; Determine o valor da variável c após o final da rotina loop i n t b ; i n t c ; b = 1 0 ; aumenta_b ( 1 0 ) ; c = b ; void aumenta_b ( i n t v a l o r ) { i n t b ; b = b + v a l o r ; Determine o valor da variável c após o final da rotina loop i n t a ; i n t c ; a = 1 0 ; c = m u l t i p l i c a ( 1 4, a ) ; i n t m u l t i p l i c a ( i n t a, i n t b ) { i n t m; m = a * b ; r e t u r n m; 6
7 2.1.7 Testes lógicos Testes lógicos serão muito utilizados para permitir o controle de fluxo de um programa, de modo que atitudes diferentes sejam tomadas conforme o resultado do teste. Todo teste lógico resulta em um valor booleano (verdadeiro ou falso). A seguir apresentamos alguns testes possíveis para variáveis numéricas. 1. Teste de igualdade entre dois valores, é representado pelo sinal == (dois sinais de igual em sequencia). Note que apenas um sinal de igual representa uma atribuição e não um teste lógico; 2. Teste de diferente, representado pelo sinal!= ; 3. Teste de maior, representado pelo sinal > ; 4. Teste de menor, representado pelo sinal < ; 5. Teste de maior ou igual, representado pelo sinal <= ; 6. Teste de maior ou igual, representado pelo sinal >= ; / / Alguns t e s t e s bool t ; i n t a = 1 0 ; i n t b = 1 0 ; i n t c = 1 1 ; t = ( a==b ) ; / / como a é i g u a l a b, t assume v a l o r t r u e t = ( a==c ) ; / / t assume o v a l o r f a l s e t = ( a>b ) ; / / t assume o v a l o r f a l s e t = ( c>a ) ; / / t assume o v a l o r t r u e Estruturas de controle de fluxo Estruturas de controle de fluxo são muito importantes em qualquer linguagem de programação. Com elas podemos alterar o fluxo normal de execução de um programa, em função dos resultados intermediários obtidos. Vamos utilizar essencialmente as seguintes estruturas de controle de fluxo Estrutura Condicional if Permite a execução do comando (ou bloco de comandos) apenas se a condição de teste for verdadeira. Sua declaração é sempre da seguinte maneira i f ( t e s t e l ó g i c o ) comando ; i f ( t e s t e l ó g i c o ) { b l o c o / / Se a f o r i g u a l a b, e s p e r e 1 segundo i f ( a==b ) d e l a y ( ) ; / / Se a f o r d i f e r e n t e de b, e x e c u t a o b l o c o i f ( a!= b ) { i n t c ; c = 100; d e l a y c ; 7
8 Estrutura Condicional if else Complemento da estrutura if, permite executar um comando (ou bloco) caso o teste seja verdadeiro, e outro comando (ou bloco) caso o teste seja falso. Sua declaração segue o seguinte esquema i f ( t e s t e l ó g i c o ) { b l o c o se v e r d a d e i r o e l s e { b l o c o se f a l s o i n t tempo ; / / Se a f o r i g u a l a b, e s p e r e um segundo. Se não, e s p e r e d o i s segundos i f ( a==b ) { tempo =1000; d e l a y ( tempo ) ; e l s e { tempo =2000; d e l a y ( tempo ) ; Estrutura de repetição while Permite a execução de um comando (ou bloco) enquanto a condição de teste for verdadeira. Sua declaração segue o esquema w h i l e ( t e s t e l ó g i c o ) { b l o c o i n t tempo ; / / Enquanto a<b, soma 3 ao v a l o r de a w h i l e ( a<b ) { a = a + 3 ; Estrutura de repetição for Permite a execução de um comando (ou bloco) por um determinado número de vezes. Pode ser construído usando a estrutura while, porém é mais cômodo utilizar a estrutura for. Sua declaração é da seguinte forma f o r ( i n i c i a l i z a ç ã o ; t e s t e de contagem ; m o d i f i c a contagem ) { b l o c o e equivale ao seguinte trecho de código usando a estrutura while i n i c i a l i z a ç ã o w h i l e ( t e s t e de contagem ) { b l o c o m o d i f i c a contagem 8
9 i n t x ; / / e x e c u t a 5 v e z e s o b l o c o que manda e s p e r a r 1 segundo / / x++ i n c r e m e n t a x, é o mesmo que e s c r e v e r x=x+1 f o r ( x =0; x <5; x ++) d e l a y ( ) ; o seguinte trecho de código realiza a mesma tarefa usando uma estrutura while i n t x ; x =0; w h i l e ( x <5){ d e l a y ( ) ; x ++; Exercícios Utilizando as rotinas pinmode e digitalwrite, complete o programa de forma a configurar todos os pinos de entrada/saída do Arduíno (pinos 0 até 13) como função de saídas. Em seguida, escreva nível lógico alto em todos eles i n t pino ; f o r ( pino =0; pino <14; pino ++){ pinmode ( pino, OUTPUT ) ; f o r ( pino =0; pino <14; pino ++){ d i g i t a l W r i t e ( pino, HIGH ) ; Utilizando as rotinas pinmode, digitalwrite e digitalread, complete o programa de forma a configurar os pinos 0 até 3 como saídas e os pinos 4 até 7 como entradas. Em seguida, na rotina de loop faça com que o nível lógico lido nas entradas (pino) seja escrito nas saídas (pino-4) pino 4 -> pino 0 pino 5 -> pino 1 pino 6 -> pino 2 e, pino 7 -> pino 3 i n t pino ; f o r ( pino =4; pino <8; pino ++){ pinmode ( pino, INPUT ) ; pinmode ( pino 4, OUTPUT ) ; i n t n i v e l ; f o r ( pino =4; pino <8; pino ++){ n i v e l = d i g i t a l R e a d ( p ino ) ; 9
10 d i g i t a l W r i t e ( pino 4, n i v e l ) ; 10
Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO
Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO Microprocessador É um circuito integrado que contém milhares, ou mesmo milhões, de transistores. Os transistores trabalham juntos para armazenar e manipular
Leia maisProgramação Básica em Arduino Aula 2
Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Site: http://oficinaderobotica.ufsc.br/ Canal: Oficina de Robótica UFSC https://www.youtube.com/channel/uc4oojsp2fhfkdrnj0wd7iag
Leia maisAlgoritmos II prof. Daniel Oliveira
Algoritmos II prof. Daniel Oliveira Revisar conceitos abordados na disciplina anterior Abordar conceitos vistos com a linguagem C# Variáveis e listas Expressões Estruturas de controle do tipo condicional
Leia maisDescrição dos pinos de entrada e saída e de funções especiais. Descrição dos modos de acesso: individual e por porto
Tópicos Descrição dos pinos de entrada e saída e de funções especiais Descrição dos modos de acesso: individual e por porto Acesso individual aos pinos Objetivos Compreender o que são periféricos em um
Leia maisProgramação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem
Leia maisWorking 03 : Conceitos Básicos I
Working 03 : Conceitos Básicos I Objetivos: Dominar os conceitos básicos da linguagem de programação C; Aprender a utilizar o compilador, identificando os erros de sintaxe do código fonte; Prazo de Envio:
Leia maisLINGUAGEM C: VARIÁVEIS E EXPRESSÕES
LINGUAGEM C: VARIÁVEIS E EXPRESSÕES Prof. André Backes LINGUAGENS DE PROGRAMAÇÃO Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador deve
Leia maisIntrodução à Programação em C. Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI
Introdução à Programação em C Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI Linguagem C Criada em 1972 para uso no LINUX; Sintaxe base para diversas outras (Java, JavaScript, PHP, C++,
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;
Leia maisAula 12: Memória: Barramentos e Registradores
Aula 12: Memória: Barramentos e Registradores Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Memória: Barramentos e Registradores FAC 1 / 34
Leia maisEngenharia Elétrica AAM. Professor: Marco Shawn Meireles Machado
Engenharia Elétrica AAM Professor: Marco Shawn Meireles Machado Objetivos da Aula: Definir linguagem de alto nível e baixo nível; Descrever a linguagem assembler; Descrever a linguagem C; Revisão linguagem
Leia maisPROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@gmail.com
Leia maisINTRODUÇÃO AO ARDUINO DUE, CANAL DIGITAL, FUNÇÃO DELAY
INTRODUÇÃO AO ARDUINO DUE, CANAL DIGITAL, FUNÇÃO DELAY INTRODUÇÃO A Plataforma Arduino é considerada plataforma aberta, ou seja, qualquer pessoa pode efetuar uma melhoria em um código, biblioteca e disponibilizá-la
Leia maisProgramação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisVariáveis primitivas e Controle de fluxo
Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/
Leia maisLinguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Leia maisConhecendo a Linguagem de Programação C
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Conhecendo a Linguagem de Programação C DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Como
Leia maisIntrodução à Programação
Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5
Leia maisCIT Aula 02 Variáveis e Estruturas de desvio condicional. Autor: Max Rodrigues Marques Carga Horária: 2 h 22/07/15 1
CIT 2015.2 Aula 02 Variáveis e Estruturas de desvio condicional Autor: Max Rodrigues Marques Carga Horária: 2 h 22/07/15 1 Variáveis Uma variável nada mais é que um nome que damos a uma determinada posição
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 maisLinguagens de Programação
Linguagens de Programação 128 13 129 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas
Leia maisRevisão da Linguagem C Prof. Evandro L. L. Rodrigues
SEL0433 Aplicação de Microprocessadores I Revisão da Linguagem C Prof. Evandro L. L. Rodrigues Estrutura de um programa C Diretivas de pré processamento Declaração de variáveis globais Declaração de protótipos
Leia maisFundamentos de Programação em Python
Fundamentos de Programação em Python Diego Silveira Costa Nascimento Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte diego.nascimento@ifrn.edu.br 23 de junho de 2017 Ementa do
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 maisConceitos básicos de programação
Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*
Leia maisEstrutura Básica da Linguagem Arduino
Governo do Estado de Pernambuco Secretaria de Educação Secretaria Executiva de Educação Profissional Escola Técnica Estadual Professor Agamemnon Magalhães ETEPAM Estrutura Básica da Linguagem Arduino Jener
Leia maisProcessing Aula 2. Prof. Wallace Lages
Processing Aula 2 Prof. Wallace Lages Aula 2 Computadores e lógica digital Variáveis Condicionais Computador ou calculadora? Computador Máquina programável capaz de realizar automaticamente uma sequência
Leia maisLaboratório de Programação II
Laboratório de Programação II Aula 02 Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Na aula passada vimos... Na aula passada vimos... 01 Introdução à linguagem C;
Leia maisIntrodução a Linguagem C. Prof. Me. Hélio Esperidião
Introdução a Linguagem C Prof. Me. Hélio Esperidião Características de um programa De forma geral a maioria dos programas são compostos por dados de entrada, processamento e dados de saída. Entrada de
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisAULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa
AULA 2: INTRODUÇÃO A PYTHON Luís Feliphe Silva Costa Sumário Variáveis simples Entrada e Saída de dados Operadores Estruturas Condicionais Estruturas de repetição Funções Tratamento de erros Variáveis
Leia maisSistemas Operacionais e Introdução à Programação. Programação com linguagem C
Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador
Leia maisULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.
PROCESSADOR ULA Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade. ULA Uma ULA típica pode realizar as operações artiméticas: - adição; - subtração; E lógicas: - comparação
Leia maisAula 3 Conceitos de memória, variáveis e constantes Cleverton Hentz
Aula 3 Conceitos de memória, variáveis e constantes Cleverton Hentz Sumário de Aula } Conceito de Memória } Variáveis e Tipos de Dados } Constantes 2 Conceito de Memória } A memória de um computador é
Leia maisEstruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.
1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras
Leia maisProgramação Estruturada
Programação Estruturada Introdução à linguagem C Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Programação estruturada
Leia maisUnidade de Controle. UC - Introdução
Unidade de Controle Prof. Alexandre Beletti (Cap. 3 Weber, Cap.8 Monteiro, Cap. 10,11 Stallings) UC - Introdução Para gerenciar o fluxo interno de dados e o instante em que ocorrem as transferências entre
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 2 Elementos fundamentais de Algoritmos, Conceitos de Variáveis Profa. Marina Gomes marinagomes@unipampa.edu.br 21/03/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje
Leia maisEstrutura Básica de um Computador
SEL-0415 Introdução à Organização de Computadores Estrutura Básica de um Computador Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira INTRODUÇÃO n Organização Æ implementação do hardware, componentes, construção
Leia maisC A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P
C A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P SINTAXE BÁSICA Neste capítulo vamos apresentar a estrutura básica do PHP. Para iniciar a construção de um
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.2. Estrutura de Programas e Representação
Leia maisProf. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo
Prof. Benito Piropo Da-Rin UCP ou microprocessador: Circuito Integrado inteligente (capaz de cumprir diferentes funções determinadas por instruções ) CI capaz de efetuar todas as operações necessárias
Leia maisSlides trabalhados durante a quinta aula
Slides trabalhados durante a quinta aula prática Estruturas de Controle de Fluxo 3. Laços de repetição (continuação) Exercício: Construa um algoritmo, representando-o através de um pseudocódigo e de um
Leia maisPlano de Aula. 1 o semestre. Aula número 009 Interrupções. Fazer uso das interrupções externas no Arduíno
Diretoria de Curso Plano de Aula 1 o semestre Nome do curso Eng. Ciências da Computação + TI + TADS + Eng. Elétrica Nome da Unidade Curricular Microprocessadores e Microcontroladores Aula número 009 Tema
Leia maisComputação Eletrônica. Tipos de dados, constantes, variáveis, operadores e expressões. Prof: Luciano Barbosa
Computação Eletrônica Tipos de dados, constantes, variáveis, operadores e expressões Prof: Luciano Barbosa Site da disciplina: www.cin.ufpe.br/~if165/ Recapitulando num cubo = n * n * n cubo Algoritmo
Leia maisConceitos Básicos Linguagem C
Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: funções
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: funções Prof. Renato Pimentel 1 Subprogramas Subprograma: programa que auxilia o programa principal na realização de uma determinada
Leia maisMétodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de
Leia maisMicrocontroladores. Rafael Silva de Lima https://sites.google.com/site/pensante91/
Microcontroladores Rafael Silva de Lima rafael_silvadelima@yahoo.com.br https://sites.google.com/site/pensante91/ CETTPS Centro de Ensino Técnico e Profissionalizante Curso Técnico em Automação/ Eletrotécnica
Leia maisALGORITMOS E ESTRUTURA DE DADOS
ALGORITMOS E ESTRUTURA DE DADOS Algoritmos Tipos de Dados Prof. André Peixoto - Todo o trabalho realizado por um computador é baseado na manipulação dos dados/informações contidas em sua memória. Podemos
Leia maisPROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S
PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é
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 maisAlgoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi
Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se
Leia maisVariáveis, Comandos de Atribuição e Comando de Entrada e Saída
BCC 201 - Introdução à Programação Variáveis, Comandos de Atribuição e Comando de Entrada e Saída Guillermo Cámara-Chávez UFOP 1/1 Estrutura Básica de um programa C I < d i r e t i v a s do pré p r o c
Leia maisTÉCNICO DE INFORMÁTICA - SISTEMAS
782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar
Leia maisOrientação a Objetos e Java
Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
Leia maissumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3
sumário 1 bases numéricas 1 1.1 introdução... 2 1.2 representação de números... 3 1.3 transformação entre bases... 4 1.3.1 método polinomial...4 1.3.2 método de subtrações...5 1.3.3 método das divisões...6
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 mais08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA CAMPUS CAMPINA GRANDE 1 2 Elementos Básicos Tipos de dados Dados e seus tipos: Computadores lidam com diversos tipos de dados: numéricos,
Leia maisALGORITMOS, ARQUITETURA E ARDUINO
INOVAÇÃO TECNOLÓGICA E EMPREENDEDORISMO ALGORITMOS, ARQUITETURA E ARDUINO Prof. Dr. Daniel Caetano 2017-2 Objetivos Rever alguns conceitos iniciais de algoritmos Tomar contato com alguns conceitos de arquitetura
Leia maisLINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.
LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado
Leia maisAplicações Avançadas de Microprocessadores. Professor: Marco Shawn Meireles Machado
Aplicações Avançadas de Microprocessadores Professor: Marco Shawn Meireles Machado Iniciação aos sistemas microcontrolados Objetivos da Aula: Descrever os itens que compõem uma CPU; Detalhar a estrutura
Leia maisOrganização e Arquitetura de Computadores. Leslier S. Corrêa
Organização e Arquitetura de Computadores Leslier S. Corrêa O nome refere-se ao matemático John Von Neumann, que foi considerado o criador dos computadores da forma como são projetados até hoje. Entretanto,
Leia mais1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 APRESENTANDO A LINGUAGEM C. Página 1
1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 E-books PCNA Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 APRESENTANDO A LINGUAGEM C Página 1 2 TECNOLOGIA ELEMENTAR CAPÍTULO 3 SUMÁRIO Apresentação -----------------------------------------------------------
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4
Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para
Leia maisSEL-0415 Introdução à Organização de Computadores Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira
SEL-0415 Introdução à Organização de Computadores Conceitos Básicos Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira INTRODUÇÃO n Organização Æ implementação do hardware, componentes, construção dos dispositivos
Leia maisINTRODUÇÃO: MICROCONTROLADORES
INTRODUÇÃO: MICROCONTROLADORES MICROCONTROLADOR X MICROPROCESSADOR Baixa capacidade de processamento Freq. Operação em MHz Custo de R$ 7,00 a 30,00 Aplicações mais restrita Alta capacidade de processamento
Leia maisRevisão. Profa Marina Gomes
Revisão Profa Marina Gomes Algoritmos Na construção de um programa, o problema que o algoritmo representa é composto por três fases. Entrada: dados de entrada do algoritmo. Processamento: ações sobre os
Leia maisNESSES SLIDES, VOCÊ VAI APRENDER: Configuração de ambiente Variáveis Operadores Ambiguidade Condições e Laços
MÓDULO II NESSES SLIDES, VOCÊ VAI APRENDER: Configuração de ambiente Variáveis Operadores Ambiguidade Condições e Laços SIGA OS PRÓXIMOS PASSOS: 1. INSTALAÇÃO PYTHON : ESCOLHA A VERSÃO MAIS ATUAL E ESTÁVEL
Leia maisROBÓTICA 1 INTRODUÇÃO A PROGRAMAÇÃO NO ARDUINO
ROBÓTICA 1 INTRODUÇÃO A PROGRAMAÇÃO NO ARDUINO O QUE VIMOS AULA PASSADA? REVISÃO RÁPIDA Hardware vs Software Eletricidade básica Lei de Ohm Um pouco sobre o Arduino Materiais Importantes Entradas do Arduino
Leia maisAlgoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa:
Algoritmos Algoritmos Leandro Tonietto Unisinos ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto/inf/pg1/algoritmosi_java.pdf Mar-2008 Possuem sintaxe flexível e são mais úteis para descrição
Leia maisProgramação I Funções. Prof. Carlos Alberto
Programação I Funções Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Funções Funções são blocos de códigos que podem ser nomeados e chamados de dentro de um programa; Funções
Leia maisLINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.
LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado
Leia mais6 Alguns conceitos e comandos em programação
6 Alguns conceitos e comandos em programação 6.1 Diretivas Diretivas são instruções que permitem ao programador efetuar algum tipo de modificação à compilação, sendo analisadas e executadas pelo pré-compilador,
Leia maisMétodos Computacionais
Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento
Leia maisAtividade de laboratório 007. Prof: Carlos Eduardo de Brito Novaes 10 de junho de Alunos RA Nome Curso Semestre
Atividade de laboratório 007 Prof: Carlos Eduardo de Brito Novaes 10 de junho de 2016 Alunos RA Nome Curso Semestre Resumo Atividade da unidade curricular: Laboratório Integrado de Microprocessadores e
Leia maisAlgoritmo e Programação Matemática
Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação
Leia maisPIC - PROGRAMAÇÃO LINGUAGEM C. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR
PIC - PROGRAMAÇÃO LINGUAGEM C AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR acjunior@facthus.edu.br UBERABA MG 1º SEMESTRE 2009 FLUXOGRAMAS FLUXOGRAMAS Fluxograma para somar dois números e guardar em uma terceira
Leia maisPlano de Aula. 1 o semestre. Cronômetro Interrupções, Timers. Utilizar interrupções para criar um cronômetro com parciais
Diretoria de Curso Plano de Aula 1 o semestre Nome do curso Nome da Unidade Curricular Aula número Tema Período Turma Eng. Ciências da Computação + TI + TADS + Eng. Elétrica Microprocessadores e Microcontroladores
Leia maisLINGUAGEM C: PONTEIROS
LINGUAGEM C: PONTEIROS Prof. André Backes DEFINIÇÃO Variável É um espaço reservado de memória usado para guardar um valor que pode ser modificado pelo programa; Ponteiro É um espaço reservado de memória
Leia maisIntrodução à Programação
Programação de Computadores Introdução à Programação Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Algoritmo & Programa Variáveis Declaração de tipos Comando de entrada ou de leitura Comando de
Leia maisEssencialmente, um ponteiro nada mais é do que uma variável que ao invés de conter um valor, contém um endereço de memória.
Ponteiros e Arrays Ponteiros são fundamentais para a programação bem sucedida em C: Passagem de parâmetros por referência; Alocação dinâmica de memória; Aumentar a eficiência de certar rotinas. Essencialmente,
Leia maisDisciplina: Arquitetura de Computadores
Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na
Leia maisProcessamento da Informação
Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece
Leia maisALOCAÇÃO DINÂMICA DE MEMÓRIA
INE5408 Estruturas de Dados Semestre 2008/1 Prof. Leandro J. Komosinski ALOCAÇÃO DINÂMICA DE Memória de Computador 1 byte = 8 bits (ex.: 00100110) 1 KB = 1024 bytes 1 MB = 1024 KB 1 GB = 1024 MB Meu computador
Leia maisquadrado(a)*0.5 -((a+2)*f(x,(1.0+n)/x)) Arquitectura de Computadores (2008/2009) - Linguagem C - Expressões 2
Linguagem C Expressões Expressões em C Cast, condições, atribuições Operadores lógicos de bits Precedência dos operadores Expressões em C Uma expressão é a forma de calcular um valor num programa: quadrado(a)*0.5
Leia maisFundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes
Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informações
Leia maisIntrodução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis
Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for
Leia maisCONCEITOS DE ALGORITMOS
CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição
Leia maisIntrodução a Programação
Introdução a Programação Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula 02 Primeiro Programa Roteiro Primeiros Passos Variáveis Expressões Comandos
Leia maisProgramação científica C++
Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 2 Expressões Combinação de dados e operadores que resulta em um valor. expressão x = 2 * y + 4; variável operador constante Memória do computador
Leia maisLição 4 Fundamentos da programação
Lição 4 Fundamentos da programação Introdução à Programação I 1 Objetivos Ao final desta lição, o estudante será capaz de: Identificar as partes básicas de um programa em Java Reconhecer as diferenças
Leia maisSISTEMAS MICROCONTROLADOS
SISTEMAS MICROCONTROLADOS UTFPR Código: EL54E Turma: N11/E11 Prof. Sérgio Moribe Colaboração: Prof. Heitor S. Lopes Prof. Rubens Alexandre de Faria Email: smoribe@utfpr.edu.br Site: pessoal.utfpr.edu.br/smoribe
Leia maisModularidade - Funções e Procedimentos
Modularidade - Funções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situações, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de entrada
Leia mais