* Esta obra é uma adptação do autor desse blog da disciplina de Fundamento de Algoritmo para Computação do curso de Tecnologia em Sistemas de Computacão/Cederj UFF das aulas originais cujo os autores são: Adriano Cruz e Jonas Knopman.
Índice
1. Objetivos
2. Introdução
3. Modelo de Memória
4. Armazenamento de Dados Numéricos
6. Armazenamento de Dados Lógicos
7. Variáveis
8. Bibliografia
1. Objetivos
3. Modelo de Memória
.: 20 bits devido ao 2?
Armazenamento de Inteiros
O conjunto dos números reais contém uma quantidade infinita de elementos.
Como o número de bits para armazenar os números é finito não é possível representar todos os números deste conjunto.
Reais em bits
fig. ??/
Quais números reais?
fig???
Armazenamento de caracteres
Valores Lógicos
.: Um nome de variável deve necessariamente começar por uma letra;
.: Um nome de variável não deve conter nenhum símbolo diferente de letras ou algarismo, exceto o símbolo_(sublinha)
.: Não existe limitação para o número de caracteres do nome;
.: Não será feita diferenciação entre letras maiúsculas e minúsculas.
Dicas
ss??
Índice
1. Objetivos
2. Introdução
3. Modelo de Memória
4. Armazenamento de Dados Numéricos
- Dados Inteiros
- Dados Reais
6. Armazenamento de Dados Lógicos
7. Variáveis
8. Bibliografia
1. Objetivos
- Apresentar o modelo de do computador
- Mostras como os diversos tipos de dados são armazenados na memória do computador.
- Apresentar o conceito de variável e sua utilidade no desenvolvimento de algoritmos.
- Variáveis são endereços de memória destinados a armazenar informações temporariamente.
- Todo Algoritmo ou programa deve possuir variável!
- Podemos classificar as variáveis em dois tipos as de Entradas e as de Saídas.
- Variáveis de Entrada armazenam informações fornecidas por um meio externo, normalmente usuários ou discos.
- Variáveis de Saída armazenam dados processados como resultados.
- De acordo com a figura acima A e B são Variáveis de Entrada e C é uma Variável de Saída.
3. Modelo de Memória
- A memória é um conjunto ordenado de células, cada um identificada por um endereço.
- A unidade mínima de informação na memória é o bit que consegue armazenar ou o valor 0 ou 1.
- Um conjunto de 8 bits forma um byte.
- Um conjunto de bytes, usualmente 4 (32 bits) forma uma palavra de memória.
- Usualmente uma palavra de memória é composta de 4 bytes.
- A maioria das memórias são endereçadas por byte, portanto o endereço permite manipular o conteúdo de um determinado byte.
- Memória com 2 - 1 palavras de 4 bytes.
- Então n + 2 é o número de bits do endereço.
- Podemos pensar cada byte como uma casa.
- Uma palavra seria uma vila de casas.
- A memória uma rua de vilas.
- Suponha uma rua (memória) com 5 vilas (palavras), cada vila com 4 casas (bytes).
- Temos endereços de casas indo de casa 0 até casa 19.
- Temos endereço de vilas indo de vila 0 até vila 4.
- Posso dar meu endereço como casa 6 ou casa 2 da vila 1.
- Observar que 6 dividido por 4 (casas por vila) é igula a 1 com resto 2.
- Em computação os endereços de memória começam sempre em 0.
- Memória de 128 Mega (2?) bytes
- Memória com 128 x 2 ? = 2? x 2 ? = 128 x 1.048.576 bytes
- O endereço deve ter 27 bits
.: 20 bits devido ao 2?
- Se cada palavra de memória tem 4 bytes temos então 32 Mega palavras.
- Cada tipo de dado requer uma quantidade de bits para armazenar o valor.
- Esta quantidade é variável e depende da linguagem e do computador.
- Atualmente computadores típicos possuem memória com palavras de 32 bits, ou 4 bytes.
Armazenamento de Inteiros
- O conjunto dos números inteiros ( Z = {..., -2, -1, 0, +1, +2, ...}) contém uma quantidade infinita de elementos.
- Como o número de bits disponíveis na memória para armazenar os números é finito não é possível representar todos os números deste conjunto.
- Considere uma palavra de 32 bits.
- Um bit é reservado para o sinal.
- O bit mais significativo está à esquerda e menos significativo à direita;
- Um número interio i pode variar entre
- 2 ? <= i <= 2 ? = 1
-2.147.483.648 <= i <= 2.147.483.647
-2.147.483.648 <= i <= 2.147.483.647
- Como não temos + 0 e - 0, há um número negativo a mais que os positivos.
- Observar que não podemos armazenar números maiores que 2.147.483.647 e menores que -2.147.483.648.
- Isto pode ser contornado, em alguns casos, empregando-se os números reais que veremos em seguinda.
- Os números reais também são armazenados em 32 bits.
- Estes números são, as vezes, chamados de números em ponto flutuante devido a forma como eles são processados.
- O método é parecido com a notação científica que algumas calculadoras empregam.
- Os números em notação científica nas calculadoras são expressos por um número real normalizado multiplicado por um número elevado a uma potência.
- Ex. 1,5 E + 8 = 1,5 X 10?
- Um número normalizado implica que antes da vírgula somente deve aparecer um algarismo.
- Ex. (5,0 E+8) + (6,0 E+8) = 11,0 E+8
- Resultado final = 1,10 E+9
O conjunto dos números reais contém uma quantidade infinita de elementos.
Como o número de bits para armazenar os números é finito não é possível representar todos os números deste conjunto.
Reais em bits
- Considere uma palavra de 32 bits.
- Um bit é reservado para o sinal.
- Oito bits são reservado para o expoente.
- A base do expoente depende do computador, normalmente 2.
- Vinte e três bits são usados para o número real, chamado de mantissa.
fig. ??/
Quais números reais?
- Computadores tem dificulade de armazenar os números reais muito grandes e os muito pequenos.
- Os subconjunto dos números reais disponíveis pode ser representado como
fig???
- O zero está incluído no conjunto.
- Para uma palavra de 32 bits temos RMAX = 3.4 E + 38 e RMIN = 3.4 E -38
Armazenamento de caracteres
- O código de caracteres normalmente empregado é o ASCII que precisa de 8 bits ou um byte.
- Como os computadores endereçam a memória por bytes então é possível armazenar um caractere por byte.
- Para armazenar um conjunto de caracteres normalmente se emprega um conjunto de bytes.
Valores Lógicos
- Este tipo de dado somente possui dois valores verdadeiro e falso.
- Portanto um bit é suficiente para armazenar estes dados.
- Normalmente se usa um byte inteiro para armazenar valores lógicos devido a dificuldade de endereçar bits.
- Diversos tipos de dados são armazenados na memória.
- A memória é endereçada por meio de números.
- Para procurar um determinado dado na memória seria preciso saber o número da palavra (ou byte) onde este dado está armazenado.
- Este método seria complicado e ilegível.
- Mais fácil empregar nomes como fazemos com as ruas de nossa cidade.
- Variáveis receberão nomes.
- Cada variável deve receber um nome diferente para poder ser identificada sem problemas.
- Estes nomes deverão ser utilizados sempre que quisermos modificar ou saber o conteúdo de uma posição na memória do computador.
- As regras para criação dos nomes das variáveis são as seguintes:
.: Um nome de variável deve necessariamente começar por uma letra;
.: Um nome de variável não deve conter nenhum símbolo diferente de letras ou algarismo, exceto o símbolo_(sublinha)
.: Não existe limitação para o número de caracteres do nome;
.: Não será feita diferenciação entre letras maiúsculas e minúsculas.
Dicas
- Escolher nomes significativos para as variáveis
- Nomes significativos ajudam a tornar os algoritmos e os programas auto-explicativos
- Nomes de variáveis com mais de uma palavra podem ajudar também
- Sempre as palavras por sublinhados
- Não é necessário alongar desnecessariamente os nomes.
- Evitar nomes que não ajudem o entendimento do algoritmo.
- soma
- salario_total
- nota_final
- prova1
- velocidade_inicial
- soma$................$ não é permitido
- salario total.......Espaço em branco não é permitido
- 2prova...............Não começou por uma letra
- Salario/hora...../não é permitido
ss??
Um comentário:
muito bom esse seu material e quebrou um galho pra min realizar um trabalho de escola valeu muito obrigado
Postar um comentário