Segue-se o estudo da forma como os computadores armazenam e acedem às informações contidas na sua memória.
|
|
- Vagner Madureira Meneses
- 8 Há anos
- Visualizações:
Transcrição
1 4. Variáveis Para a execução de qualquer tipo de programa o computador necessita de ter guardados os diferentes tipos de dados, já estudados. Esses dados estão guardados na sua memória. Segue-se o estudo da forma como os computadores armazenam e acedem às informações contidas na sua memória A Arquitectura da Memória De modo simplificado, a memória de um computador pode ser vista como um conjunto ordenado de células, cada uma identificada unicamente por um número inteiro distinto, conhecido como endereço. Segue-se uma representação esquemática das células de memória de um computador: Endereço Informação Cada célula de memória é habitualmente conhecida como byte. Como se verá a seguir, um byte é um agrupamento de 8 bits, numerados por ordem decrescente de 7 até 0. Diz-se que o bit 7 é o mais significativo (do inglês, MSB = Most Significant Bit) e o bit 0 é o menos significativo (do inglês, LSB = Least Significant Bit). Segue-se uma representação esquemática dos bytes: Byte { 0 Por sua vez, cada bit é capaz de armazenar uma informação binária (0 ou 1). Como um bit possui dois resultados possíveis, e como um byte é formado por 8 bits, então um byte possui 2 8 = 256 resultados possíveis. Apesar dos bytes serem subdivididos em partes menores - os bits, a menor porção acessível de memória é o byte. Por outras palavras, se quisermos escrever, ou ler, algum dado da (na) memória do computador, teremos de faze-lo byte a byte. bit
2 4.2. Armazenamento de Dados na Memória Cada um dos diversos tipos de dados, já apresentados, necessita de uma certa quantidade de memória para armazenar a informação representada por eles. Esta quantidade é função do tipo de dado considerado, do tipo de máquina (computador) e do tipo de linguagem de programação. Seguem-se alguns exemplos de armazenamento de dados Armazenamento de Dados do Tipo Literal Relembre-se que um byte consegue representar 256 (= 2 8 ) possibilidades diferentes. Uma informação do tipo literal é um conjunto de caracteres que podem ser letras, dígitos ou símbolos especiais. A união de todos os caracteres que existem no computador é um conjunto com um número de elementos menor do que 256. Deste resultado surgiu a necessidade de associar a cada caractere um número, código, diferente, variando de 0 a 255 (256 possibilidades). Inicialmente, cada fabricante de computadores adoptava uma convenção diferente para este código. Mais recentemente, esta convenção foi padronizada para possibilitar a migração de programas entre máquinas diferentes. Esta convenção é representada numa tabela de organização de caracteres em números. O padrão mais aceite é o ASCII, cuja tabela se apresenta a seguir: (null) 0 0 ctrl-h 8 8 ctrl-a 1 1 ctrl-i 9 9 ctrl-b 2 2 ctrl-j 10 a ctrl-c 3 3 ctrl-k 11 b ctrl-d 4 4 ctrl-l 12 c ctrl-e 5 5 ctrl-m 13 d ctrl-f 6 6 ctrl-n 14 e ctrl-g 7 7 ctrl-o 15 f (continuação)
3 ctrl-p ctrl-q ctrl-r ctrl-s ctrl-t ctrl-u ctrl-v ctrl-w ctrl-x ctrl-y ctrl-z ESC ctrl-\ ctrl-1 ctrl-6 ctrl-_ Espaço! # $ % & a 1b 1c 1d 1e 1f ( ) * +, -. / : ; < = a 2b 2c 2d 2e 2f a 3b 3c 3d (continuação)
4 A B C D E F G H I J K L M N O P Q R S T e 3f a 4b 4c 4d 4e 4f U V W X Y Z [ \ ] ^ _ a b c d e f g h i j k a 5b 5c 5d 5e 5f a 6b (continuação)
5 l m n o p q r s t u c 6d 6e 6f v w x y z { } ~ a 7b 7c 7d 7e Assim, cada célula de memória (byte) pode conter um caractere, representado pelo seu código ASCII. Relembre-se que, o comprimento de um dado do tipo literal é dado pelo número de caracteres nele contido. Portanto, para guardarmos um tipo de dado literal precisamos de reservar um espaço contíguo de memória igual ao comprimento do mesmo, destinando um byte para cada caractere de informação. Por exemplo, a informação do tipo literal banana possui 6 caracteres e, portanto, são necessários 6 bytes para reter a informação na memória. A princípio, estes bytes podem estar em qualquer lugar na memória, mas é conveniente que estejam juntos. A primeira posição deste conjunto de bytes é absolutamente arbitrária e a sua escolha é geralmente feita automaticamente pelo compilador, isto é, pelo programa que traduz um outro escrito em alguma linguagem de programação para outra distinta, em geral, a linguagem de máquina do computador com que se trabalha. A figura seguinte mostra o caso em que se armazena a literal banana no conjunto de 6 bytes contíguos de memória iniciando pela posição de memória 0. Na realidade, ao contrário dos caracteres do literal, os códigos correspondentes aos mesmos é que são guardados em memória
6 Endereço Informação 0 b (98) 1 a (97) 2 n (110) 3 a (97) 4 n (110) 5 a (97) Armazenamento de Dados do Tipo Lógico Uma informação do tipo lógico só possui dois valores possíveis:.v. ou.f.. Assim, a princípio, um único bit seria suficiente para armazenar uma informação deste tipo. Contudo, deve-se lembrar que a menor porção de memória que se pode aceder é o byte. Portanto, uma informação do tipo lógico é armazenada num byte de memória. De certa forma, se por um lado isto pode ser como um desperdício de memória, por outro simplifica bastante a arquitectura de memória dos computadores. Além disso, isto não é tão relevante, uma vez que na prática o número de ocorrências de dados do tipo lógico é bastante inferior ao de ocorrências de dados do tipo literal ou numérico Armazenamento de Dados do Tipo Inteiro O conjunto dos números inteiros (Z) contém um número infinito de elementos: Z = {, -3, -2, -1, 0, 1, 2, 3, } Obviamente não é viável o armazenamento de todos os elementos deste conjunto num computador. É necessário realizar um estudo para que se limite o número de elementos representáveis deste conjunto. Se apenas um byte fosse utilizado para armazenar os dados do tipo inteiro, existiriam apenas 256 números diferentes neste conjunto: {-127, -126,, -3, -2, -1, 0, 1, 2, 3,, 127, 128} Esta restrição é muito forte, uma vez que muitas das aplicações práticas necessitam de números inteiros maiores que estes. Se forem utilizados dois bytes para armazenar um número inteiro, o universo dos números representáveis cresce para = 2 16 = possibilidades: {-32767, ,, -3, -2, -1, 0, 1, 2, 3,, 32767, 32768}
7 Este conjunto satisfaz a grande maioria das necessidades práticas. Assim, em geral utilizam-se dois bytes para representar os números inteiros em computadores. Contudo, restam algumas aplicações muito específicas em que é necessário um conjunto ainda maior. Para estes casos, algumas linguagens de programação fornecem mecanismos para trabalhar números inteiros com quatro bytes. Nestes casos os dados chamam-se inteiros longos ou estendidos Armazenamento de Dados do Tipo Real O conjunto dos números reais (R) contém um número infinito de elementos e, pelas mesmas razões que o conjunto dos números inteiros (Z), precisa de ser limitado. Para dados deste tipo julga-se apropriado adoptar quatro bytes para a sua representação interna nos computadores. São muito comuns situações como as aplicações científicas em que é necessária uma maior precisão de cálculo, intimamente ligada ao número de casas decimais dos dados. Para este caso, em analogia com o que acontece com os dados do tipo inteiro, algumas linguagens de programação decidiram criar dados do tipo real estendido (com oito bytes) Conceito e Utilidades de Variáveis Como já foi visto anteriormente, informações correspondentes a diversos tipos de dados são armazenadas nas memórias dos computadores. Para aceder individualmente a cada uma destas informações, seria necessário saber o tipo de dado dessa informação (ou seja, o número de bytes de memória por ela ocupados) e a posição inicial desse conjunto de bytes na memória. Percebe-se que esta sistemática de acesso a informações na memória é bastante ilegível e difícil de se trabalhar. Para contornar esta situação criou-se o conceito de variável, que é uma entidade destinada a guardar uma informação. Basicamente, uma variável possui três atributos: um nome, um tipo de dado associado à mesma e a informação por ela guardada
8 Toda a variável possui um nome que tem como função diferenciá-la das demais. Cada linguagem de programação estabelece as suas próprias regras de formação de nomes de variáveis. Adoptaremos neste texto as seguintes regras: - um nome de variável deve necessariamente começar com uma letra; - um nome de variável não deve conter nenhum símbolo especial, excepto a sublinha (_). Exemplos: SALARIO correcto 1ANO errado (não começou com uma letra) ANO1 correcto A CASA errado (contém o caractere branco) SAL/HORA errado (contém o caractere "/") SAL_HORA correcto _DESCONTO errado (não começou com uma letra) Obviamente é interessante adoptar nomes de variáveis relacionados com as funções que serão exercidas pelas mesmas dentro de um programa. Exemplificando, para guardar o salário de um funcionário de uma empresa num programa de processamento de folha de pagamento, seria interessante utilizar uma variável chamada SALARIO. Outro atributo característico de uma variável é o tipo de dado que ela pode armazenar. Este atributo define a natureza das informações contidas na variável. Por último, há o atributo informação, que nada mais é do que a informação útil contida na variável. Uma vez definidos, os atributos nome e tipo de dado de uma variável não podem ser alterados e assim permanecem durante toda a sua existência, desde que o programa que a
9 utiliza não seja modificado. Por outro lado, o atributo informação está constantemente sujeito a mudanças, de acordo com o fluxo de execução do programa. Por exemplo, se definirmos que uma determinada variável é chamada, SALARIO e é destinada a guardar números reais, é possível que seu conteúdo seja, num dado instante, igual a 1.500,00 e posteriormente modificado para 3.152,19, de acordo com o programa executado. Em resumo, o conceito de variável foi criado para facilitar a vida dos programadores, permitindo aceder a informações na memória dos computadores por meio de um nome, em vez do endereço de uma célula de memória Definição de Variáveis em Todas as variáveis utilizadas em algoritmos devem ser definidas antes de serem utilizadas. Isto é necessário para que o compilador reserve um espaço na memória para as mesmas. Algumas linguagens de programação (como BASIC e FORTRAN) dispensam esta definição, uma vez que o espaço na memória é reservado à medida que novas variáveis são encontradas no decorrer do programa. Nos algoritmos apresentados neste texto será adoptada a seguinte convenção: - todas as variáveis utilizadas nos algoritmos serão definidas no início dos mesmos, por meio de um comando de uma das seguintes formas: VAR <nome_da_variável> : <tipo_da_variável> ou VAR <lista_de_variáveis> : <tipo_das_variáveis> - a palavra-chave VAR deve estar sempre presente e deve ser utilizada uma única vez na definição de um conjunto de uma ou mais variáveis; - numa mesma linha poderão ser definidas uma ou mais variáveis do mesmo tipo; Para tal, devem-se separar os nomes das mesmas por vírgulas; - variáveis de tipos diferentes devem ser declaradas em linhas diferentes. A forma de utilização deste comando ficará mais clara quando representarmos os algoritmos em linguagem estruturada (pseudocódigo). Esta convenção é válida para a representação de algoritmos na forma de pseudocódigo. Em termos de fluxograma, não é usual adoptar-se qualquer forma de definição de variáveis
10 Exemplo de definição de variáveis: VAR NOME : literal[10] IDADE : inteiro SALARIO : real TEM_FILHOS : lógico No exemplo anterior foram declaradas quatro variáveis: - a variável NOME, capaz de armazenar dados literais de comprimento 10 (dez caracteres); - a variável IDADE, capaz de armazenar um número inteiro; - a variável SALARIO, capaz de armazenar um número real; - a variável TEM_FILHOS, capaz de armazenar uma informação lógica Organização de Variáveis na Memória O computador não é capaz de trabalhar directamente com nomes simbólicos, como os nomes de variáveis. Pelo contrário, o computador só consegue tratar com células de memória por meio do conhecimento dos seus endereços. Para intermediar esta situação, o tradutor (compilador ou interpretador) monta uma tabela organizada com os nomes simbólicos e posições na memória. Esta tabela é denominada Tabela de Símbolos e é apresentada na figura seguinte. Nome Simbólico Posição Inicial Tipo de Dado Das informações contidas na tabela de símbolos destacam-se: - o nome simbólico de cada uma das variáveis do programa; - a posição inicial do conjunto de bytes contíguos de memória onde está armazenada a informação da variável; - o tipo de dado da variável, a partir do qual é possível determinar o tamanho do espaço de memória consumido pela mesma. A informação relativa ao tipo de dado da variável pode, eventualmente, ser complementada ou simplesmente substituída na tabela de símbolos pelo tamanho da variável
11 Utilizando, apenas, a definição das variáveis de um programa, o tradutor é capaz de montar, com pouco esforço, a referida tabela. A cada variável do programa corresponde uma linha da tabela. As informações contidas na tabela são absolutamente suficientes para localizar qualquer uma das variáveis definidas no programa dentro da memória do computador. Inicialmente, toda a memória está disponível e, à medida que se vão definindo novas variáveis, as células de memória vão sendo reservadas, começando pela primeira posição disponível. Para exemplificar, a tabela de símbolos correspondente às variáveis definidas no exemplo anterior é dada abaixo: Nome Simbólico Posição Inicial Tipo de Dado NOME 0 Literal[10] IDADE 10 Inteiro SALARIO 12 Real TEM_FILHOS 16 Lógico Supondo que a primeira posição de memória disponível é o byte 0, ao encontrar a definição da variável NOME como um literal de 10 caracteres, o tradutor reservará os 10 bytes iniciais da memória (posições 0 a 9) para a informação da referida variável. Ao encontrar a definição da variável IDADE como um inteiro, o tradutor reservará dois bytes de memória para a mesma, iniciando pela primeira posição livre de memória, ou seja, os bytes 10 e 11. Seguindo o mesmo raciocínio, o tradutor reservará para a variável SALARIO as posições de memória 12 a 15, correspondentes a 4 bytes, e para a variável TEM_FILHOS a posição Resumo A memória dos computadores é composta por células numeradas ordenadamente denominadas bytes. Cada byte é constituído por 8 bits. Cada tipo de dado requer um número diferente de bytes para armazenar a sua informação na memória. Esta quantidade pode também variar em função do tipo de computador considerado. Uma variável é uma entidade dotada de um nome para diferenciá-la das demais e um tipo de dado que define o tipo de informação que ela é capaz de guardar. Uma vez definidos, o nome e o tipo de uma variável, não podem ser alterados no decorrer de um programa. Por
12 outro lado, a informação útil da variável é objecto de constante modificação durante o decorrer do programa, de acordo com o fluxo de execução do mesmo
Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis
1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que
Leia maisAlgoritmos e Programação _ Departamento de Informática
5 TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. De um modo geral estas informações podem ser classificadas em dois tipos:
Leia maisProjeto e Desenvolvimento de Algoritmos
Projeto e Desenvolvimento de Algoritmos Variáveis Adriano Cruz e Jonas Knopman Índice Objetivos Introdução Modelo de Memória Armazenamento de Dados Numéricos Dados Inteiros Dados Reais Armazenamento de
Leia maisVIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00
Fundamentos da Programação 32 A. Conceito Variáveis contém dados: VIII. VARIÁVEIS de entrada que o computador precisa manipular; de saída que o computador precisa imprimir; e temporários, utilizados de
Leia maisCAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES
CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:
Leia maisPROGRAMAÇÃO DE COMPUTADORES (Teoria)
PC PROGRAMAÇÃO DE COMPUTADORES (Teoria) Aula 01 Prof. Ricardo Veras (prof.rveras@gmail.com) ALGORITMOS "Seqüência ordenada de passos, que deve ser seguida para a realização de um tarefa" "Algoritmo é um
Leia maisAula 2 Variáveis. Precisamos armazenar os tipos de dados da aula anterior (inteiros, reais, literais e lógicos) em memória. Como fazer?
Aula 2 Variáveis 1. Introdução Computadores precisam manipular informações. Por conseguinte, precisam armazená-las em sua memória. Para isso, usamos a abstração de variáveis. 2. Sistemas de numeração Explicar
Leia maisLINGUAGEM C UMA INTRODUÇÃO
LINGUAGEM C UMA INTRODUÇÃO AULA 4 Entrada e saída 1 Entrada, saída, hãmm? O conceito de entrada e saída já foi utilizado de forma intuitiva nos exemplos das aulas anteriores. Entendemos por entrada qualquer
Leia maisAlgoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br
(Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução
Leia maisINTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO
Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele
Leia maisFigura 1 - O computador
Organização e arquitectura dum computador Índice Índice... 2 1. Introdução... 3 2. Representação da informação no computador... 4 3. Funcionamento básico dum computador... 5 4. Estrutura do processador...
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisResolução de problemas e desenvolvimento de algoritmos
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de
Leia maisSistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h
Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Representação de grandeza com sinal O bit mais significativo representa o sinal: 0 (indica um número
Leia maisIntrodução à Lógica de Programação
Introdução à Lógica de Programação Sistemas Numéricos As informações inseridas em um computador são traduzidos em dados, ou seja, em sinais que podem ser manipulados pelo computador. O computador trabalha
Leia mais004 CTRL-D 036 $ 068 D 100 da. 017 CTRL-Q 049 1 081 Q 113 qopn
:: InfoIsis - +qisis - Textos - DOS - 1 :: Home Page Uma abordagem Mais Ferramentas a Conjuntos Que Isis de Textos Caracteres Bases De DOS Dados ASCII no DOSProposta http://www.infoisis.eti.br/mqisi/tex/dos/pgtxdos001.htm
Leia maisA lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.
INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,
Leia maisApostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi
Apostila de Fundamentos de Programação I Prof: André Luiz Montevecchi Introdução O mundo atual é dependente da tecnologia O uso intenso de diversos aparatos tecnológicos é parte integrante do nosso dia-a-dia
Leia maisCurso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária
1- Apresentação Binária Os computadores funcionam e armazenam dados mediante a utilização de chaves eletrônicas que são LIGADAS ou DESLIGADAS. Os computadores só entendem e utilizam dados existentes neste
Leia maisCAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM
CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas
Leia maisO que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador.
O que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador. Linguagem de Programação Uma linguagem de programação é um método padronizado para expressar
Leia maisLP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br
LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de
Leia maisLÓGICA DE PROGRAMAÇÃO
Todos direitos reservados. Proibida a reprodução, mesmo parcial, por qualquer processo mecânico, eletrônico, reprográfico, etc., sem a autorização, por escrito, do(s) autor(es) e da editora. LÓGICA DE
Leia maisIntrodução às Linguagens de Programação
Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador
Leia maisDadas a base e a altura de um triangulo, determinar sua área.
Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares
Leia maisAlgoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)
Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Os algoritmos são descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação
Leia maisIntrodução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br
Introdução INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br introdução Tópicos conceitos básicos o que é um programa um programa na memória decifrando um código referência Capítulo
Leia maisSistemas Numéricos bit / Byte BIT BYTE. Prof. Celso Candido ADS / REDES / ENGENHARIA
BIT BYTE 1 BIT / BYTE Toda informação introduzida em um computador precisa ser entendida pela máquina para que possa ser corretamente interpretada e processada. O computador armazena e movimenta as informações
Leia maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia maisConceitos básicos de programação
O QUE É UM PROGRAMA? Para executar uma dada tarefa é geralmente necessário entender o sistema onde ela é realizada. Por exemplo, para fazer um bolo temos um sistema composto por: Ingredientes Cozinheiro
Leia maisVeja abaixo um exemplo de um endereço IP de 32 bits: 10000011 01101011 00010000 11001000
4 Camada de Rede: O papel da camada de rede é transportar pacotes de um hospedeiro remetente a um hospedeiro destinatário. Para fazê-lo, duas importantes funções da camada de rede podem ser identificadas:
Leia maisLÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos
LÓGICA DE PROGRAMAÇÃO Vitor Valerio de Souza Campos Exemplos de algoritmos Faça um algoritmo para mostrar o resultado da multiplicação de dois números. Algoritmo em descrição narrativa Passo 1 Receber
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 maisERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS
ERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS Compilação dos erros mais comuns cometidos por estudantes de Introdução a Algoritmos Marcos Portnoi Edição 19.4.2007 Universidade Salvador UNIFACS
Leia maisConceitos Importantes:
Conceitos Importantes: Variáveis: Por Flávia Pereira de Carvalho, 2007 i O bom entendimento do conceito de variável é fundamental para elaboração de algoritmos, consequentemente de programas. Uma variável
Leia maiscentena dezena unidade 10 2 10 1 10 0 275 2 7 5 200 + 70 + 5 275
A. Sistemas de Numeração. Para se entender a linguagem do computador (o Código de Máquina), é necessário conhecer um pouco da teoria dos números. Não é uma tarefa tão difícil quanto pode parecer. Sabendo-se
Leia maisFundamentos em Informática (Sistemas de Numeração e Representação de Dados)
1 UNIVERSIDADE DO CONTESTADO / UnC CAMPUS CONCÓRDIA/SC CURSO DE SISTEMAS DE INFORMAÇÃO Fundamentos em Informática (Sistemas de Numeração e Representação de Dados) (Apostila da disciplina elaborada pelo
Leia maisPontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Disciplina de Lógica Computacional Aplicada. Prof. Dr.
Índice 1. SISTEMAS NUMÉRICOS 1.1 Caracterização dos Sistemas Numéricos 1.2 Sistemas Numéricos em uma Base B Qualquer 1.2.1 Sistema de Numeração Decimal 1.2.2. Sistema de Numeração Binário 1.2.3 Sistema
Leia maisUniversidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP
Algoritmos e Programação Ricardo Argenton Ramos Baseado nos slides do professor Jadsonlee da Silva Sá Ementa Conceito de algoritmo. Lógica de programação e programação estruturada. Linguagem de definição
Leia maisAutómatos Finitos Determinísticos
Ficha 2 Autómatos Finitos Determinísticos 2.1 Introdução Se olharmos, de forma simplificada, para um computador encontramos três componentes principais: a) A unidade de processamento central b) As unidades
Leia mais20 Caracteres - Tipo char
0 Caracteres - Tipo char Ronaldo F. Hashimoto e Carlos H. Morimoto Até agora vimos como o computador pode ser utilizado para processar informação que pode ser quantificada de forma numérica. No entanto,
Leia maisEngenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
Leia mais1. Sistemas de numeração
1. Sistemas de numeração Quando mencionamos sistemas de numeração estamos nos referindo à utilização de um sistema para representar uma numeração, ou seja, uma quantidade. Sistematizar algo seria organizar,
Leia maisAlgoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma
Roteiro: Conceitos básicos de algoritmo, linguagem, processador de linguagem e ambiente de programação; Aspectos fundamentais da organização e do funcionamento de um computador; Construções básicas de
Leia maisLÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES
LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos
Leia maisAula 2 Modelo Simplificado de Computador
Aula 2 Modelo Simplificado de Computador Um computador pode ser esquematizado de maneira bastante simplificada da seguinte forma: Modelo Simplificado de Computador: Memória Dispositivo de Entrada Processador
Leia maisProf. Rafael Gross. rafael.gross@fatec.sp.gov.br
Prof. Rafael Gross rafael.gross@fatec.sp.gov.br Todo protocolo define um tipo de endereçamento para identificar o computador e a rede. O IP tem um endereço de 32 bits, este endereço traz o ID (identificador)
Leia maisPROGRAMAÇÃO ESTRUTURADA. CC 2º Período
PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 06: Ponteiros Declarando e utilizando ponteiros Ponteiros e vetores Inicializando ponteiros Ponteiros para Ponteiros Cuidados a serem
Leia maisHardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Leia maisILP - Introdução à Linguagem de Programação. Plano de estudo: - Constantes e variáveis. - Atribuindo valores às variáveis.
Plano de estudo: -. - Atribuindo valores às variáveis. - Expressões Na maioria das vezes, precisamos armazenar dados para manipulá-los. Por exemplo, em um escritório de contabilidade, armazenamos os dados
Leia mais2. Representação Numérica
2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos
Leia maisAplica/remove sublinhado.
Nova pasta CTRL+O Cria nova pasta. Nova planilha ALT+SHIFT+F1 Insere uma nova planilha. Abrir planilha CTRL+A Abrir Planilha Salvar CTRL+B Salva o arquivo ativo com seu nome de arquivo, local e formato
Leia maisEstrutura de Dados. Ricardo José Cabeça de Souza www.ricardojcsouza.com.br ricardo.souza@ifpa.edu.br. Parte 1
Estrutura de Dados Ricardo José Cabeça de Souza www.ricardojcsouza.com.br Parte 1 MODELO DE UM COMPUTADOR CPU Central Processing Unit MODELO DE UM COMPUTADOR O canal de comunicação (conhecido como BUS)
Leia maisPesquisa e organização de informação
Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior
Leia maisINFORMÁTICA BÁSICA. Prof. Rafael Zimmermann
INFORMÁTICA BÁSICA Prof. Rafael Zimmermann 1. INFORMÁTICA É a ciência que estuda o processamento de informações. Nasceu da necessidade do homem processar informações cada vez mais complexas e com maior
Leia maisTIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.
Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se
Leia maisProgramação para Computação
Universidade Federal do Vale do São Francisco Programação para Computação Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Ementa Conceito de algoritmo. Lógica de programação e programação
Leia maisSistemas de Numerações.
Matemática Profº: Carlos Roberto da Silva; Lourival Pereira Martins. Sistema de numeração: Binário, Octal, Decimal, Hexadecimal; Sistema de numeração: Conversões; Sistemas de Numerações. Nosso sistema
Leia maisMemória Cache. Prof. Leonardo Barreto Campos 1
Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.
Leia maisEndereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C
Endereçamento IP Endereçamento IP Prof. Marcel Santos Silva marcel@magres.com.br É uma sequência de números composta de 32 bits. Esse valor consiste num conjunto de quatro grupos de 8 bits. Cada conjunto
Leia maisULA Sinais de Controle enviados pela UC
Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento
Leia maisPontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Organização e Arquitetura de Computadores
Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Organização e Arquitetura de Computadores Questão 1) Considere o projeto de um circuito digital que implementa a função f
Leia mais1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos
1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos Já estudamos anteriormente que os processadores funcionam (ou melhor, o seu hardware funciona) através de ordens simples e básicas,
Leia maisAlgoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos
1. INTRODUÇÃO A ALGORITMOS O uso de algoritmos é quase tão antigo quanto a matemática. Com o passar do tempo, entretanto, ele foi bastante esquecido pela matemática. Com o advento das máquinas de calcular
Leia maisALGORITMOS PARTE 01. Fabricio de Sousa Pinto
ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3
Leia maisProjeção ortográfica da figura plana
A U L A Projeção ortográfica da figura plana Introdução As formas de um objeto representado em perspectiva isométrica apresentam certa deformação, isto é, não são mostradas em verdadeira grandeza, apesar
Leia maisSistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h
Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Representação da Informação Um dispositivo eletrônico, armazena e movimenta as informações internamente
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário
Leia mais1.1. Organização de um Sistema Computacional
1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes
Leia maisAMBIENTE DE PROGRAMAÇÃO PYTHON
Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 1 AMBIENTE DE PROGRAMAÇÃO PYTHON 1.1. Objectivos
Leia maisIntrodução aos Computadores
Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas
Leia mais3. O NIVEL DA LINGUAGEM DE MONTAGEM
3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também
Leia maisAnálise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem
Leia maisProgramação de Computadores I. Linguagem C Vetores
Linguagem C Vetores Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 08 Vetores 1 Vetores Sintaxe: tipo_variável nome_vetor[tamanho]; Um vetor é uma variável que possui várias ocorrências de um mesmo
Leia maisEndereçamento IP. Figura 1 Estrutura hierárquica do endereço IP
Endereçamento IP 1. Introdução: A partir da segunda metade dos anos 90, a Internet se tornou uma rede muito diferente daquela existente em sua concepção no início dos anos 80. Hoje, a Internet tornou-se
Leia maisCurso de Instalação e Gestão de Redes Informáticas
ESCOLA PROFISSIONAL VASCONCELLOS LEBRE Curso de Instalação e Gestão de Redes Informáticas SISTEMAS DE ARQUIVOS FAT E FAT32 José Vitor Nogueira Santos FT2-0749 Mealhada, 2009 Introdução Muitos usuários
Leia maisCAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA
8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente
Leia maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia mais13 Números Reais - Tipo float
13 Números Reais - Tipo float Ronaldo F. Hashimoto e Carlos H. Morimoto Até omomentonoslimitamosaouso do tipo inteiro para variáveis e expressões aritméticas. Vamos introduzir agora o tipo real. Ao final
Leia maisAtalhos da Web. Krishna Tateneni Yves Arrouye Tradução: Lisiane Sztoltz
Krishna Tateneni Yves Arrouye Tradução: Lisiane Sztoltz 2 Conteúdo 1 Atalhos da Web 4 1.1 Introdução.......................................... 4 1.2 Atalhos da Web.......................................
Leia maisComputação L2. Arquivos. Observação: Material da Disciplina Computação Eletrônica CIN/UFPE.
Computação L2 Arquivos Observação: Material da Disciplina Computação Eletrônica CIN/UFPE. Memórias do Computador HD: permanente (pode desligar o computador), barato e lento; O HD é representado por um
Leia maisCONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com
CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Objetivos Compreender os conceitos de lógica de programação e de algoritmos. Conhecer
Leia maisLição 1 Introdução à programação de computadores
Lição Introdução à programação de computadores Introdução à Programação I Objetivos Ao final desta lição, o estudante será capaz de: Identificar os diferentes componentes de um computador Conhecer linguagens
Leia maisFabio Bento fbento@ifes.edu.br
Fabio Bento fbento@ifes.edu.br Eletrônica Digital Sistemas de Numeração e Códigos 1. Conversões de Binário para Decimal 2. Conversões de Decimal para Binário 3. Sistema de Numeração Hexadecimal 4. Código
Leia maisArmazenamento Secundário. SCE-183 Algoritmos e Estruturas de Dados II
Armazenamento Secundário SCE-183 Algoritmos e Estruturas de Dados II 1 Armazenamento secundário Primeiro tipo de armazenamento secundário: papel! Cartões perfurados HDs, CD-ROM, floppy disks, memórias
Leia maisFundamentos de Microinformática. Ricardo José Cabeça de Souza 2010 Fundamentos 3
Fundamentos de Microinformática Ricardo José Cabeça de Souza 2010 Fundamentos 3 Outros Componentes Porta Paralela Porta Serial Porta PS/2 (Personal System 2) Porta USB (Universal Serial Bus) Porta S-Vídeo
Leia maisTabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Leia maisAlgoritmos e Programação I
Algoritmos e Programação I Introdução a Computação Prof. Fernando Maia da Mota mota.fernandomaia@gmail.com CPCX/UFMS Fernando Maia da Mota 1 Computadores são dispositivos que só sabem fazer um tipo de
Leia maisARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Leia mais23/02/2015. 006 007 8 NOME João 011 12 CPF 98395831153 021 022 023 24 SALARIO 3000,00 VARIÁVEL VARIÁVEIS
VARIÁVEL Uma variável é um local na memória principal, isto é um endereço que armazena um conteúdo. Em linguagens de alto nível, nós é permitido dar nome a esse endereço para facilitar a programação. Gilvan
Leia maisAlgoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual
Algoritmos: Lógica para desenvolvimento de programação de computadores Autor: José Augusto Manzano Capítulo 1 Abordagem Contextual 1.1. Definições Básicas Raciocínio lógico depende de vários fatores para
Leia maisUniversidade do Minho Departamento de Electrónica Industrial. Sistemas Digitais. Exercícios de Apoio - I. Sistemas de Numeração
Universidade do Minho Departamento de Electrónica Industrial Sistemas Digitais Exercícios de Apoio - I Sistemas de Numeração CONVERSÃO ENTRE SISTEMAS DE NUMERAÇÃO Conversão Decimal - Binário Números Inteiros
Leia maisSistemas Operacionais
Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de
Leia maisAula 01. - Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. Fábio Nelson.
- Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios Aula 01 Slide 1 BIBLIOGRAFIA SCHILDT H. C Completo e Total, Makron Books. SP, 1997. Curso de linguagem C da UFMG. ZIVIANI,
Leia maisATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
Leia mais2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10
1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...
Leia mais3. Arquitetura Básica do Computador
3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,
Leia maisCircuitos Digitais. Conteúdo. Sistema de Numeração e Códigos :: Conversões de Binário para Decimal SISTEMA DE NUMERAÇÃO E CÓDIGOS
Ciência da Computação Sistemas de Numeração e Conversões Prof. Sergio Ribeiro Material adaptado das aulas do Prof. José Maria da UFPI Conteúdo Conversões de binário para decimal. Conversões de decimal
Leia mais