[A BÍBLIA DO VBA NO ACCESS]: MACROS E PROGRAMAÇÃO VBA NO ACCESS - CURSO COMPLETO

Páginas: 1164 | Autor: Júlio Battisti | 50% de Desconto e 21 Super Bônus

Você está em: PrincipalArtigosWindows 7Anexo : 04
Quer receber novidades e e-books gratuitos?
›››
« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
WINDOWS 7 - CURSO COMPLETO - 2400 páginas
Autor: Júlio Battisti


Promoção: Livro Windows Server 2012 R2 e Active Directory - Curso Completo, 2100 Páginas. Tudo para você se tornar um administrador de redes altamente qualificado para o mercado de trabalho e levar a sua carreira para o próximo nível!

Promoção: Livro Windows Server 2012 R2 e Active Directory

Curso Completo, 2100 páginas. Tudo para você se tornar um administrador de redes altamente qualificado para o mercado de trabalho e levar a sua carreira para o próximo nível!


Lição 371 - Anexo - Sistema de Numeração Binária

Neste tópico apresentarei os princípios básicos do sistema de numeração binário. Também mostrarei como realizar cálculos simples e conversões de Binário para Decimal e vice-versa. Feita a apresentação das operações básicas com números binários, mostrarei como o TCP/IP através de cálculos binários e, com base na máscara de sub-rede (subnet mask), determina se dois computadores estão na mesma rede ou fazem parte de redes diferentes.

Vou iniciar falando do sistema de numeração decimal, para depois fazer uma analogia ao apresentar o sistema de numeração binário. Todos nós conhecemos o sistema de numeração decimal, no qual são baseados os números que usamos no nosso dia-a-dia, como por exemplo: 100, 259, 1450 e assim por diante. Você já parou para pensar porque este sistema de numeração é chamado de sistema de numeração decimal?

Não? Bem, a resposta é bastante simples: este sistema é baseado em dez dígitos diferentes, por isso é chamado de sistema de numeração decimal. Todos os números do sistema de numeração decimal são escritos usando-se uma combinação dos seguintes dez dígitos:

0    1    2    3    4    5    6    7    8    9

Dez dígitos = Sistema de numeração decimal

Vamos analisar como é determinado o valor de um número do sistema de numeração decimal. Por exemplo, considere o seguinte número:

4538

O valor deste número é formado, multiplicando-se os dígitos do número, de trás para frente (da direita para a esquerda), por potências de 10, começando com 10º. O último dígito (bem à direita) é multiplicado por 10º, o penúltimo por 101, o próximo por 102 e assim por diante. o valor real do número é a soma destas multiplicações. Observe o esquema indicado na tabela a seguir que será bem mais fácil de entender:

Número

4

5

3

8

Multiplica por: 

103

102

101

10º

ou seja:

1000

100

10

1

Resultado:

4 x 1000

5 x 100

3 x 10

8 x 1

Igual a:

4000

500

30

8

Somando tudo:

4000+500+30+8

É igual a:

4538

Observe que 4538 significa exatamente:

   4 milhares (103)

+ 5 centenas (102)

+ 3 dezenas  (101)

+ 8 unidades (100)

E assim para números com mais dígitos teríamos potências 104, 105 e assim por diante. Observe que multiplicando cada dígito por potências de 10, obtemos o número original. Este princípio aplicado ao sistema de numeração decimal é válido para qualquer sistema de numeração. Se for o sistema de numeração Octal (baseado em 8 dígitos), multiplica-se por potências de 8: 8º, 81, 82 e assim por diante. Se for o sistema Hexadecimal (baseado em 10 dígitos e 6 letras) multiplica-se por potências de 16, só que a letra A equivale a 10, já que não tem sentido multiplicar por uma letra, a letra B equivale a 11 e assim por diante.

Bem, por analogia, se o sistema decimal é baseado em dez dígitos, então o sistema binário deve ser baseado em dois dígitos? Exatamente. Números no sistema binários são escritos usando-se apenas os dois seguintes dígitos:  0  1    

Isso mesmo, números no sistema binário são escritos usando-se apenas zeros e uns, como nos exemplos a seguir:

01011100

11011110

Também por analogia, se, no sistema decimal,  para obter o valor do número, multiplicamos os seus dígitos, de trás para frente, por potências de 10, no sistema binário fazemos esta mesma operação, só que baseada em potências de 2, ou seja: 20,  21,  22,  23,  24 e assim por diante.

Vamos considerar alguns exemplos práticos. Como faço para saber o valor decimal do seguinte número binário: 11001110

Vamos utilizar a tabelinha indicada a seguir, para facilitar os nossos cálculos:

Número:

1

1

0

0

1

1

1

0

Multiplica por:

27

26

25

24

23

22

21

20

equivale a:

128

64

32

16

8

4

2

1

Multiplicação:

1x128

1x64

0x32

0x16

1x8

1x4

1x2

0x1

Resulta em:

128

64

0

0

8

4

2

0

Somando tudo:

128+64+0+0+8+4+2+0

Resulta em:

206

Ou seja, o número binário 11001110 equivale ao decimal 206. Observe que onde temos 1 a respectiva potência de 2 é somada e onde temos o zero a respectiva potência de 2 é anulada por ser multiplicada por zero. Apenas para fixar um pouco mais este conceito, vamos fazer mais um exemplo de conversão de binário para decimal.  Converter o número 11100010 para decimal. A resolução está indicada na tabela a seguir:

 

1

1

1

0

0

0

1

0

Multiplica por:

27

26

25

24

23

22

21

20

equivale a:

128

64

32

16

8

4

2

1

Multiplicação:

1x128

1x64

1x32

0x16

0x8

0x4

1x2

0x1

Resulta em:

128

64

32

0

0

0

2

0

Somando tudo:

128+64+32+0+0+0+2+0

Resulta em:

226

Conversão de Decimal para Binário:

Bem, e se tivéssemos que fazer o contrário, converter o número 234 de decimal para binário, qual seria o binário equivalente??

Nota: Nos exemplos deste tópico vou trabalhar com valores de, no máximo, 255, que são valores que podem ser representados por 8 dígitos binários, ou na linguagem do computador 8 bits, o que equivale exatamente a um byte. Por isso que cada um dos quatro números que fazem parte do número IP, somente podem ter um valor máximo de 255, que é um valor que cabe em um byte, ou seja, 8 bits, conforme já citado anteriormente.

Existem muitas regras para fazer esta conversão, eu prefiro utilizar uma bem simples, que descreverei a seguir e que serve perfeitamente para o propósito deste tópico.

Vamos voltar ao nosso exemplo, como converter 234 para um binário de 8 dígitos?

Eu começo o raciocínio assim. Primeiro vamos lembrar o valor de cada dígito:

128      64        32        16        8          4          2          1

Lembrando que estes números representam potências de 2, começando, de trás para frente, com 20, 21, 22 e assim por diante, conforme indicado logo a seguir:

128      64        32        16        8          4          2          1

27         26         25         24         23         22         21         20

Pergunto: 128 cabe em 234? Sim, então o primeiro dígito é 1. Somando 64 a 128 passa de 234? Não, dá 192, então o segundo dígito também é 1. Somando 32 a 192 passa de 234? Não, dá 224, então o terceiro dígito também é 1. Somando 16 a 224 passa de 234? Passa, então o quarto dígito é zero. Somando 8 a 224 passa de 234? Não, da 232, então o quinto dígito é 1. Somando 4 a 232 passa de 234? Passa, então o sexto dígito é zero. Somando 2 a 232 passa de 234? Não, dá exatamente 234, então o sétimo dígito é 1. Já cheguei ao valor desejado, então todos os demais dígitos são zero. Com isso, o valor 234 em binário é igual a:

11101010

Para exercitar vamos converter mais um número de decimal para binário. Vamos converter o número 144 para binário.

Pergunto: 128 cabe em 144? Sim, então o primeiro dígito é 1. Somando 64 a 128 passa de 144? Sim, dá 192, então o segundo dígito é 0. Somando 32 a 128 passa de 144? Sim, dá 160, então o terceiro dígito também é 0. Somando 16 a 128 passa de 144? Não, dá exatamente 144, então o quarto dígito é 1. Já cheguei ao valor desejado, então todos os demais dígitos são zero. Com isso, o valor 144 em binário é igual a: 10010000

Bem, agora que você já sabe como converter de decimal para binário, está em condições de aprender sobre o operador “E” e como o TCP/IP usa a máscara de sub-rede (subnet mask) e uma operação “E”, para verificar se duas máquinas estão na mesma rede ou não.

Operador E:

Existem diversas operações lógicas que podem ser feitas entre dois dígitos binários, sendo as mais conhecidas as seguintes: “E”, “OU”, “XOR” e “NOT”.

Para o nosso estudo interessa o operador E. Quando realizamos um “E” entre dois bits, o resultado somente será 1, se os dois bits forem iguais a 1. Se pelo menos um dos bits for igual a zero, o resultado será zero. Na tabela a seguir temos todos os valores possíveis da operação E entre dois bits:

bit-1

bit-2

(bit-1) E (bit-2)

1

1

1

1

0

0

0

1

0

0

0

0

Como o TCP/IP usa a máscara de sub-rede:

Considere a Figura A.2, onde mostro a representação de uma rede local, ligada a uma outras redes através de um roteador.

Curso Completo de Windows 7 - Júlio Battisti

Figura A.2 - Roteador ligando duas ou mais redes locais.

É apresentada uma rede que usa como máscara de sub-rede 255.255.255.0 (uma rede classe C. Ainda não abordamos as classes de redes, o que será feito mais adiante). A rede é a rede 10.200.150, ou seja, todos os equipamentos da rede tem os três primeiras partes do número IP como sendo: 10.200.150. Veja que existe uma relação direta entre a máscara de sub-rede a quantas das partes do número IP são fixas, ou seja, que definem a rede, conforme foi descrito anteriormente.

A rede da Figura A.2 é uma rede bastante usual, onde existe um roteador ligado à rede e o roteador está conectado a um Modem, através do qual é feita a conexão da rede local com a rede WAN da empresa, utilizando uma linha de dados (link de comunicação).

Como o TCP/IP usa a máscara de sub-rede e o roteador:

Quando dois computadores tentam trocar informações em uma rede, o TCP/IP precisa, primeiro, calcular se os dois computadores pertencem a mesma rede ou a redes diferentes. Neste caso podemos ter duas situações distintas:

  • Situação 1: Os dois computadores pertencem a mesma rede: Neste caso o TCP/IP envia o pacote para o barramento da rede local. Todos os computadores recebem o pacote, mas somente o destinatário do pacote (o destinatário é identificado pelo campo IP de destino, contido no pacote de informações) é que o captura e passa para processamento pelo Windows e pelo programa de destino. Como é que o computador sabe se ele é ou não o destinatário do pacote? Muito simples, no pacote de informações está contido o endereço IP do destinatário. Em cada computador, o TCP/IP compara o IP de destinatário do pacote com o IP do computador, para saber se o pacote é ou não para o respectivo computador.
  • Situação 2: Os dois computadores não pertencem a mesma rede: Neste caso o TCP/IP envia o pacote para o Roteador (endereço do Default Gateway configurado nas propriedades do TCP/IP) e o Roteador se encarrega de fazer o pacote chegar à rede de destino. Mais adiante mostrarei detalhes sobre como o Roteador é capaz de rotear pacotes de informações até redes distantes.

Agora a pergunta que tem a ver com este tópico:

“Como é que o TCP/IP faz para saber se o computador de origem e o computador de destino pertencem a mesma rede?” Vou usar alguns exemplos práticos para explicar como o TCP/IP faz isso:

Exemplo 1: Com base na Figura A.2, suponha que o computador cujo IP é 10.200.150.5 (origem) queira enviar pacotes de informações para o computador cujo IP é 10.200.150.8 (destino), ambos com máscara de sub-rede igual a 255.255.255.0.

O primeiro passo é converter o número IP das duas máquinas e da máscara de sub-rede para binário. Com base nas regras que vimos anteriormente, teríamos as conversões indicadas nas tabelas a seguir:

Computador de origem:

10

200

150

5

00001010

11001000

10010110

00000101

Computador de destino:

10

200

150

8

00001010

11001000

10010110

00001000

Máscara de sub-rede:

255

255

255

0

11111111

11111111

11111111

00000000

Feitas as conversões para binário, vou mostrar que tipo de cálculos o TCP/IP faz, para determinar se o computador de origem e o computador de destino estão na mesma rede.

Em primeiro lugar é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de Sub-rede do computador de origem, conforme indicado na tabela a seguir:

10.200.150.5

00001010

11001000

10010110

00000101

E

255.255.255.0

11111111

11111111

11111111

00000000

10.200.150.0

00001010

11001000

10010110

00000000

Resultado

Em seguida é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de sub-rede do computador de destino, conforme indicado na tabela a seguir:

10.200.150.8

00001010

11001000

10010110

00001000

E

255.255.255.0

11111111

11111111

11111111

00000000

10.200.150.0

00001010

11001000

10010110

00000000

Resultado

Agora o TCP/IP compara os resultados das duas operações. Se os dois resultados forem iguais, isto significa que os dois computadores, origem e destino, pertencem a mesma rede local. Neste caso o TCP/IP envia o pacote para o barramento da rede local. Todos os computadores recebem o pacote, mas somente o destinatário do pacote é que o captura e passa para processamento pelo Windows e pelo programa de destino. Como é que o computador sabe se ele é ou não o destinatário do pacote? Muito simples, no pacote de informações está contido o endereço IP do destinatário. Em cada computador, o TCP/IP compara o IP de destinatário do pacote com o IP do computador, para saber se o pacote é ou não para o respectivo computador.

É o que acontece neste exemplo, pois o resultado das duas operações “E” é igual: 10.200.150.0, ou seja, os dois computadores pertencem a rede: 10.200.150.0. Como você já deve ter adivinhado, agora vamos a um exemplo, onde os dois computadores não pertencem a mesma rede, pelo menos devido às configurações do TCP/IP.

Exemplo 2: Suponha que o computador cujo IP é 10.200.150.5 (origem) queira enviar um pacote de informações para o computador cujo IP é 10.204.150.8 (destino), ambos com máscara de sub-rede igual a 255.255.255.0.

O primeiro passo é converter o número IP das duas máquinas e da máscara de sub-rede para binário. Com base nas regras que vimos anteriormente, teríamos as conversões indicadas a seguir:

Computador de origem:

10

200

150

5

00001010

11001000

10010110

00000101

Computador de destino:

10

204

150

8

00001010

11001100

10010110

00001000

Máscara de sub-rede:

255

255

255

0

11111111

11111111

11111111

00000000

Feitas as conversões para binário, vamos ver que tipo de cálculos o TCP/IP faz, para determinar se o computador de origem e o computador de destino estão na mesma rede.

Em primeiro lugar é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de Sub-rede do computador de origem, conforme indicado na tabela a seguir:

10.200.150.5

00001010

11001000

10010110

00000101

E

255.255.255.0

11111111

11111111

11111111

00000000

10.200.150.0

00001010

11001000

10010110

00000000

Resultado

Agora é feita uma operação “E”, bit a bit, entre o Número IP e a máscara de sub-rede do computador de destino, conforme indicado na tabela a seguir:

10.204.150.8

00001010

11001100

10010110

00001000

E

255.255.255.0

11111111

11111111

11111111

00000000

10.204.150.0

00001010

11001100

10010110

00000000

Resultado

Agora o TCP/IP compara os resultados das duas operações. Neste exemplo, os dois resultados são diferentes: 10.200.150.0 e 10.204.150.0. Nesta situação o TCP/IP envia o pacote para o Roteador (endereço do Default Gateway configurado nas propriedades do TCP/IP) e o Roteador se encarrega de fazer o pacote chegar até a rede de destino. Em outras palavras o Roteador sabe entregar o pacote para a rede 10.204.150.0 ou sabe para quem enviar (um outro roteador), para que este próximo roteador possa encaminhar o pacote. Este processo continua até que o pacote seja entregue na rede de destino.

Observe que, na Figura A.2, temos dois computadores que, apesar de estarem fisicamente na mesma rede, não conseguirão se comunicar devido a um erro de configuração na máscara de sub-rede de um dos computadores. É o caso dos computador 10.200.150.4 (com máscara de sub-rede 255.255.250.0). Como este computador está com uma máscara de sub-rede diferente dos demais computadores da rede ( os quais estão com máscara: 255.255.255.0), ao fazer os cálculos, o TCP/IP chega a conclusão que este computador pertence a uma rede diferente, o que faz com que ele não consiga se comunicar com os demais computadores da rede local.


Promoção: Livro Windows Server 2012 R2 e Active Directory - Curso Completo, 2100 Páginas. Tudo para você se tornar um administrador de redes altamente qualificado para o mercado de trabalho e levar a sua carreira para o próximo nível!

Promoção: Livro Windows Server 2012 R2 e Active Directory

Curso Completo, 2100 páginas. Tudo para você se tornar um administrador de redes altamente qualificado para o mercado de trabalho e levar a sua carreira para o próximo nível!


« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »

Livros Que O Júlio Battisti Indica:

Todos com excelentes bônus e pode parcelar no cartão!

Windows Server 2012 R2 e Active Directory

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 2100 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Universidade Redes

Curso Online: Universidade de Redes

 

Autor: André Stato | Carga horária: 170h

 

Curso Online: Universidade de Redes

A Bíblia do Excel

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 1338 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Macros e VBA no Access 2010

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 1164 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Macros e VBA no Excel 2010

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 1124 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Universidade Java

 Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Neri Zeritzke | Duração: 250h | Aulas: 1922

 

[Livro]: Aprenda com Júlio Battisti: Access 2010 Básico em 140 Lições - Através de Exemplos Práticos

Todos os livros com dezenas de horas de vídeo aulas de bônus, preço especial (alguns com 50% de desconto). Aproveite. São poucas unidades de cada livro e por tempo limitado.

Dúvidas?

Utilize a área de comentários a seguir.

Me ajude a divulgar este conteúdo gratuito!

Use a área de comentários a seguir, diga o que achou desta lição, o que está achando do curso.
Compartilhe no Facebook, no Google+, Twitter e Pinterest.

Indique para seus amigos. Quanto mais comentários forem feitos, mais lições serão publicadas.

Quer receber novidades e e-books gratuitos?
›››

Novidades e E-books grátis

Fique por dentro das novidades, lançamento de livros, cursos, e-books e vídeo-aulas, e receba ofertas de e-books e vídeo-aulas gratuitas para download.



Institucional

  • Quem somos
  • Garantia de Entrega
  • Formas de Pagamento
  • Contato
  • O Autor
  • Endereço

  • Júlio Battisti Livros e Cursos Ltda
  • CNPJ: 08.916.484/0001-25
  • Rua Vereador Ivo Cláudio Weigel, 537 Universitário
  • Santa Cruz do Sul/RS
  • CEP 96816-208
  • Todos os direitos reservados, Júlio Battisti 2001-2017 ®

    [LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

    APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI