13 julho, 2010

Passos necessários na criação de programas

Para a criação de programas são necessário os seguintes passos:

  1. Desenvolvimento do algoritmo, estágio em que o problema a ser resolvido é estabelecido e a melhor solução proposta, criação de diagramas esquemáticos relativos à melhor solução proposta.
  2. Codificação do algoritmo, que consiste em escrever o programa nalguma linguagem de programação, tendo em conta como base a solução proposta no passo anterior.
  3. A transformação para a linguagem máquina (compilação), ou seja, a criação do programa objectivo, escrito como uma sequência de zeros e uns que podem ser interpretados pelo processador.
  4. O último estágio é a eliminação de erros detectados no programa na fase de testes (debug), a correcção normalmente requer a repetição de todos os passos, com uma observação atenta.

Conversão binário –> Hexadecimal e vice-versa

Na base hexadecimal temos 16 dígitos, que vão de 0 a 9 e da letra “A” até à letra “F”, estas letras representam os números de 10 a 15. Portanto contamos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

A conversão entre números binários e hexadecimais é fácil, a primeira coisa a fazer é dividir o número binário em grupos de 4 bits, começando da direita para a esquerda. Se no grupo mais à esquerda sobrarem dígitos, completamos com zeros.

Tendo como exemplo o número binário 101011, vamos dividi-lo em grupos de 4 bits:

10;1011

Preenchendo o último grupo com zeros (o um mais à esquerda):

0010;1011

A seguir, consideramos cada grupo um número independente e consideramos o ser valor decimal:

0010=2;1011=11

Entretanto, observamos que não podemos representar este número como 211, isto seria um erro, uma vez que os números em hexadecimal maiores que 9 e menores que 16 são representados pelas letras A, B, …F. Logo, obtemos como resultado:

2Bh, onde o “h” representa a base hexadecimal.

Para a conversão de um número hexadecimal em binário apenas é necessário inverter os passos: usamos o primeiro dígito hexadecimal e o convertemos para binário, a seguir o segundo, e assim sucessivamente.

Converter números decimais para binário

Existem vários métodos para se converter números decimais para binário; apenas irei analisar um. Naturalmente a conversão com uma calculadora científica é muito mais fácil, mas nem sempre podemos contar com isso, logo o mais conveniente e, ao menos, sabemos a fórmula para o fazer.

O método resume-se na aplicações de divisões sucessivas por 2, mantendo o resto como o dígito binário e o resultado como o próximo valor a ser dividido.

Como exemplo temos o número decimal 43.

43/2=21 e resto 1; 21/2=10 e resto 1; 10/2=5 e resto 0; 5/2=2 e resto 1; 2/2=1 e resto 0; 1/2=0 e resto 1.

Para construir o equivalente binário ao número decimal 43, vamos usar os restos obtidos de baixo para cima na divisão normal (neste exemplo é da direita para a esquerda no texto), assim teremos o resultado 101011.

Conversão de binário para decimal

Quando trabalhamos com a linguagem Assembly encontramos por acaso a necessidade de converter números de um sistema binário, que é utilizado nos computadores, para o sistema decimal usado pelas pessoas.

O sistema binário é baseado apenas em duas condições ou estados, estar ligado (1), ou desligado (0), portanto a sua base e dois.

Para a sua fórmula, podemos usar a fórmula de valor posicional.

Por exemplo, se tivermos o número binário 10011, tomamos cada dígito da direita para a esquerda e multiplicamos pela base, elevando a potência correspondente à sua posição relativa:

Binário: 1 1 0 0 1

Decimal: 1*2^0 + 1*2^1 + 0*2^2 + 0*2^3 + 1*2^4

= 1 + 2 +0 + 0 + 16 = 19 decimal

o carácter ^ é usado em informática como símbolo de potência e * para multiplicação.