<Direto ao Ponto 03> Números binários
- #Informática Básica
Artigos da série: ( < ) Anterior | Índice | Seguinte ( > )
Olá, dev!
Este é mais um artigo da NOVA série DIRETO AO PONTO, que eu estou escrevendo para a DIO.
Ele vai apresentar uma introdução aos números binários e será complementado no próximo artigo sobre os números hexadecimais e octais.
Sumário
1. Introdução
2. Sistema de numeração binário (base 2)
3. Considerações finais
4. Referências
1 – Introdução
A NOVA série DIRETO AO PONTO enfoca artigos básicos sobre a programação e é voltada, principalmente, para os iniciantes.
Serão publicados artigos técnicos e artigos contando alguma história relacionada à computação/programação. Será publicado um artigo por semana, sempre no início da semana, pela manhã.
Neste artigo, eu vou apresentar o sistema binário de numeração, base da implementação dos computadores modernos. Ele será complementado no próximo artigo, que tratará dos números hexadecimais e octais, também muito usados na área de informática.
Mais uma vez, quero deixar claro que boa parte do conteúdo escrito aqui vem da minha própria vivência pessoal ao longo dos anos em que convivi com a tecnologia e informática, desde 1980. Nestes casos, não haverá referências de livros, revistas ou sites, apenas as minhas lembranças pessoais.
2 – O Sistema de numeração binário (Base 2)
Vamos fazer uma analogia para o sistema binário, repetindo tudo que foi mostrado até agora para o sistema decimal, no artigo anterior desta série.
São características desse sistema:
· Usa algarismos para representar quantidades definidas;
· Usa 2 símbolos (apenas 0 e 1) para representar qualquer quantidade;
· O zero é representado pelo algarismo 0;
· É um sistema posicional, ou seja, algarismos iguais podem valer quantidades diferentes dependendo da posição em que aparecem no número.
A notação posicional divide o número em ordens. Cada ordem imediatamente superior representa um conjunto completo de itens da unidade inferior. Desta forma, podemos representar cada ordem usando os algarismos definidos para o sistema decimal (0 e 1).
Quando uma ordem já tem o algarismo 1, mais alto da sequência, e chega mais outro item, não existe outro algarismo para representar esta quantidade naquela ordem. Portanto, a quantidade de itens daquela ordem é zerada, mas uma ordem imediatamente superior a ela é incrementada.
No sistema binário, as ordens são par, quadra, octeto, etc. Um par representa 2 unidades, uma quadra representa 2 pares, um octeto representa 2 quadras, e assim por diante.
Cada ordem representa 2 itens da ordem imediatamente inferior, ou seja, 1 par tem 2 unidades, 1 quadra tem 2 pares, 1 octeto tem 2 quadras, etc. Então podemos separar um número binário em algarismos, cada um deles em uma ordem diferente.
... | OCTETOS | QUADRAS | PARES | UNIDADES
Veja os exemplos seguintes:
Ou seja,
O primeiro número (01) representa a quantidade 0 + 0 + 0 + 1 = 1 (decimal 1).
o segundo (10) representa a quantidade 0 + 0 + 2 + 0 = 2 (decimal 2).
O terceiro (11) representa a quantidade 0 + 0 + 2 + 1 = 3 (decimal 3).
O quarto (100) representa a quantidade 0 + 4 + 0 + 0 = 4 (decimal 4).
O último (1101) representa a quantidade 8 + 4 + 0 + 1 = 13 (decimal 13).
Agora veja os exemplos seguintes:
1101 = 1000 + 0100 + 0000 + 0001:
0111 = 0000 + 0100 + 0010 + 0001.
No primeiro exemplo, o primeiro algarismo 1 representa 8 itens, o segundo algarismo 1 representa 4 itens e o terceiro representa 1 item, total de 13 itens.
Então, veja que os algarismos 1101 (1, 1, 0 e 1) representam, na ordem (1101), a quantidade de treze itens.
No segundo exemplo, o primeiro algarismo 1 representa 4 itens, o segundo representa 2 itens e o terceiro representa 1 item, total de 7 itens.
Ou seja, os algarismos 0111 (0, 1, 1, 1) representam, na ordem (0111), a quantidade de sete itens.
Analisando estes dois exemplos, dá para entender porque se diz notação posicional. Um mesmo algarismo pode representar diferentes quantidades de itens, dependendo da sua posição no número.
Um número representado em qualquer base (na base decimal não precisa) é escrito pelos seus algarismos, entre parênteses, seguidos do número da base.
Exemplo do último número mostrado acima: (1101)2
E ele é lido indicando cada algarismo e dizendo a base.
O último número mostrado acima seria lido assim: um, um, zero, um, na base 2.
Incremento de 1 item
Agora vamos incrementar um número, por exemplo, a quantidade 1:
Número binário 01: | QUADRAS | PARES | UNIDADES |
| 0 | 0 | 1 |
Ele possui 0 par e 1 unidade, ou seja, total de apenas 1 item.
Se mais 1 item precisa ser adicionado à esta quantidade, não existe mais algarismo para representar quantidade acima do 1 na ordem das Unidades. Então essa ordem passará para zero, e 1 item será adicionado à ordem dos pares.
Então, a quantidade total de dois itens será representada por 1 par, sem nenhum item adicional na ordem das Unidades, ficando assim:
Número binário 10: | QUADRAS | PARES | UNIDADES |
| 0 | 1 | 0 |
Agora ele possui 1 par e 0 unidade, ou seja, total de 2 itens.
Caso chegue mais 1 item (e sempre que chegar um novo item individual), ele será adicionado à ordem das Unidades, que passaria para 2. Não existe mais algarismos para representar quantidade acima do 1 na ordem das Unidades.
Então essa ordem passará para zero, e 1 item seria adicionado à ordem dos pares. No entanto, esta ordem passaria para 2. Não existe mais algarismos para representar quantidade acima do 1 na ordem dos Pares. Então essa ordem passará para zero, e 1 item será adicionado à ordem seguinte, das Quadras.
Número binário 011: | QUADRAS | PARES | UNIDADES |
| 0 | 1 | 1 |
E agora ele possui 1 par e 1 unidade, ou seja, total de 3 itens.
Se ainda chegar mais outro item (e sempre que chegar um novo item individual), ele será adicionado à ordem das Unidades, que passará para 1.
Número binário 100: | QUADRAS | PARES | UNIDADES |
| 1 | 0 | 0 |
Finalmente, ele possui 1 quadra, 0 par e 0 unidade, ou seja, total de 4 itens.
Este número binário (100)2 também pode ser escrito (0100)2, ou mesmo, (00000100)2.
Como as ordens superiores não representam nenhuma quantidade, elas não alteram o valor do número. Para a implementação lógica, fica mais fácil tratar de 8 em 8 algarismos juntos, 16 em 16 e assim por diante.
No sistema binário, cada algarismo (0 ou 1) que representa uma ordem é chamado de bit, cada conjunto de 4 algarismos é chamado de nibble e cada 8 algarismos é chamado de byte. Reconheceu a nomenclatura?
E como representar a retirada de 1 item da contagem? Bem, isso tem mais a ver com a parte de aritmética de números binários. Fica pra outra vez!
Veja que o número binário 1101 representa 1 Octeto, 1 Quadra, 0 Par, 1 Unidade
1 x 8 + 1 x 4 + 0 x 2 + 0 x 1 = (8 + 4 + 0 + 1 = 13 em decimal)
1 x 23 + 1 x 22 + 0 x 21 + 1 x 20
Ou seja, podemos decompor um número binário em potências de 2, da mesma forma que fazemos com os números decimais.
3 – Considerações finais
Este é mais um artigo da NOVA série DIRETO AO PONTO, que eu estou escrevendo para a DIO.
Neste artigo, foi apresentada uma introdução aos n[úmeros binários, importantes para a área de computação e para a programação..
Essa foi uma preparação para os próximos artigos, que tratarão dos números, hexadecimais, octais e da conversão entre bases numéricas.
Espero que tenha gostado. Até o próximo artigo, ainda nesta semana!
4 – Referências
Sem referências, tá tudo na minha cabeça (“in my head”).
“In your head, in your head
Zombie, zombie, zombie-ie-ie
What's in your head, in your head?
Zombie, zombie, zombie-ie-ie-ie, oh”
(Zombie – música do Cranberries) :-)
Mas, se você quiser uma bibliografia para se aprofundar no assunto, eu fiz uma pesquisa e, para o assunto deste artigo, gostei dessas:
[1] FERNANDES, Sthefania, Binário x decimal x Hexadecimal: Conheça os sistemas de numeração. Disponível em: <https://embarcados.com.br/binario-decimal-hexadecimal-sistemas-de-numeracao/>. Acessado em: 17/01/2024
[2] ROSA, Daniel, O comando LS do Linux – Como listar arquivos em um diretório e flags de opções. Disponível em: <https://www.freecodecamp.org/portuguese/news/o-comando-ls-do-linux-como-listar-arquivos-em-um-diretorio-e-flags-de-opcao/>. Acessado em: 17/01/2024
Artigos da série: ( < ) Anterior | Índice | Seguinte ( > )