Sistemas de numeração
Vamos estudar as formas de representação numérica: base binária, octal, decimal e hexadecimal. Conversão entre as bases numéricas. Noções de álgebra booleana. Introdução a sistemas digitais. Circuitos: de memória, combinacionais, seqüenciais e lógicos integrados. Elementos de um computador. Organização de computadores digitais. Unidades funcionais. Micro-operações. Organização do processador. Organizador de sistemas de memória.
Sistemas de numeração
Funções e Portas Lógicas
Evolução dos Sistemas Computacionais
Organização básica de um computador
Representação de Dados
Introdução
Como vimos anteriormente, dentro do computador os valores são armazenados no formato binário, ou seja, 0 e 1. De que maneira podemos então armazenar valores com sinal, positivo ou negativo, ou mesmo caracteres. É isso que iremos ver nessa Web Aula.
Números Inteiros Positivos
Como vocês já sabem, internamente, o computador armazena somente bits, ou seja, os valores 0 ou 1. Isso não é nenhum problema quando queremos representar valores numéricos inteiros. A representação de números inteiros internamente no computador se dá através da simples conversão do valor decimal para binário. Assim, o valor 11410 na memória do computador ficaria como 11100102. Portanto, ocuparia 7 bits.
No computador os bits são agrupados em palavras. Se estivermos trabalhando com um computador que utilize palavras de 8 bits, ou 1 byte, o armazenamento do valor 11410 na memória ficaria 011100102, com um zero à esquerda para completar o byte.
Na maioria das linguagens, uma variável inteira ocupa 2 bytes. Nesse caso, teríamos que preencher os bits à esquerda com zeros, até completar 16 bits.
Simples, não é?
Então, resumindo, para armazenar valores inteiros, transformamos o valor para binário e completamos com zeros a esquerda até o tamanho do dado.
Valores Inteiros Sinalizados
Como vamos armazenar o sinal se só podemos ter valores 0 e 1?
Para valores positivos a representação é igual à representação sem sinal: basta transformar para binário.
Para valores negativos foram desenvolvidas diversas maneiras para fazer isso. A mais utilizada é chamada de complemento de 2. Essa técnica consiste em:
1) Representar o valor em binário
2) Trocar 0 por 1 e 1 por 0. Ou seja, onde tem zero eu coloco um, e onde tem um eu coloco zero. O valor obtido é chamado de complemento de 1.
3) Para obter o complemento de 2, basta somar 1 ao complemento de 1.
Vamos ver um exemplo.
Vamos usar o valor -11410
Primeiro passo, transformar para binário: 011100102. Observe que foram utilizados 8 bits.
Segundo passo, troco zeros por uns e vice-versa: 100011012.
Terceiro passo, somo 1 ao valor obtido:
1 0 0 0 1 1 0 1
1
_____________
1 0 0 0 1 1 1 0
1
_____________
1 0 0 0 1 1 1 0
Essa é a representação do valor -11410
De uma maneira geral, valores numéricos sinalizados possuem o bit mais significativo (bit mais à esquerda) como sendo o indicador do sinal:
0 — positivo
1 — negativo
Representação de caracteres
E como podemos representar os caracteres utilizando somente zeros e uns?
Pois bem, para isso criou-se um código. Nesse código estabeleceu-se um valor numérico para cada caractere. A maioria dos computadores utiliza um código chamado ASCII (American Standard Code for Information Interchange). Pronuncia-se "ask".
Veja abaixo a tabela ASCII de conversão para os caracteres imprimíveis:
Assim, a palavra Organização, na memória, ficaria:
O
|
r
|
g
|
a
|
n
|
i
|
z
|
a
|
d
|
o
| |
decimal
|
79
|
114
|
103
|
97
|
110
|
105
|
122
|
97
|
100
|
111
|
binário
|
0100
1111
|
0111
0010
|
0110
0111
|
0110
0001
|
0110
1110
|
0110
1001
|
0111
1010
|
0110
0001
|
0110
0100
|
0110
1111
|
Observe que os códigos para a letra "o" maiúscula e minúscula são diferentes. É por isso que na programação a comparação entre eles resulta em diferentes.
Conclusão
Vimos, então, que apesar de termos que guardar valores que não são numéricos, é possível transformar esses valores em números que ficam armazenados no formato binário.
Com isso, todas as operações do computador ficam simplificadas, já que ele atua somente sobre valores "zero" e "um".
Para saber mais:
Para saber como se representam os dados em ponto flutuante (dados reais) consulte:
STALLINGS, Williams. Arquitetura e organização de computadores. 5.ed. São Paulo: Pearson, 2005
|
Superior de Tecnologia em Análise e Desenvolvimento de Sistemas
Nenhum comentário:
Postar um comentário