Sistemas Numericos: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(55 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
=Sistemas Numéricos=
=Sistemas Numéricos=
==Conceitos fundamentais==
;bit: É a menor unidade de informação manipulada pelo computador, podendo assumir dois valores, '''0''' ou '''1'''.
:O termo bit é a contração de ''binary digit''.
;Palavra binária: '''n bits''' formam uma palavra binária, a qual pode representar 2<sup>n</sup> valores diferentes.
;Byte: É o termo clássico utilizado para uma '''palavra binária de 8 bits''', o qual pode representar 2<sup>8</sup> = 256 combinações diferentes.
:Exemplo de binário de 8 bits:
{| border=1 style="text-align: center;"
|-
| 1 || 0 || 1 || 1 || 1 || 1 || 0 || 0
|-
|}


==Sistema Decimal:==
==Sistema Decimal:==
Linha 5: Linha 21:
:Base: 10
:Base: 10
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
:Exemplo: 5374<sub>10</sub> = 5 x 10<sup>3</sup> + 3 x 10<sup>2</sup> + 7 x 10<sup>1</sup> + 4 x 10<sup>0</sup>
:Exemplo:
::5374<sub>10</sub>
:::= 5 x 10<sup>3</sup> + 3 x 10<sup>2</sup> + 7 x 10<sup>1</sup> + 4 x 10<sup>0</sup>
:::= 5 x 1000 + 3 x 100 + 7 x 10 + 4 x 1
:::= 5374
 
5 3 7 4
| | | +-> Unidade (Peso    1)
| | +---> Dezena  (Peso  10)
| +-----> Centena (Peso  100)
+-------> Milhar  (Peso 1000)


==Sistema Binário:==
==Sistema Binário:==
Linha 11: Linha 37:
:Base: 2
:Base: 2
:Digitos: 0, 1
:Digitos: 0, 1
:Exemplo: 1100<sub>2</sub> = 1 x 2<sup>3</sup> + 1 x 2<sup>2</sup> + 0 x 2<sup>1</sup> + 0 x 2<sup>0</sup> -> 8 + 4 + 0 + 0 = 12
:Exemplo:
::1100<sub>2</sub>  
:::= 1 x 2<sup>3</sup> + 1 x 2<sup>2</sup> + 0 x 2<sup>1</sup> + 0 x 2<sup>0</sup>  
:::= 8 + 4 + 0 + 0  
:::= 12


1 1 0 0
| | | +-> (Peso 1)
| | +---> (Peso 2)
| +-----> (Peso 4)
+-------> (Peso 8)
===Algumas combinações de números binários===
{| border="1" cellpadding="2" style="text-align: right;"
{| border="1" cellpadding="2" style="text-align: right;"
  !Bits
  !Bits
Linha 43: Linha 80:
111  
111  
  |-
  |-
  |4 || 2<sup>4</sup> = 6 || 0000
  |4 || 2<sup>4</sup> = 16 || 0000
0001
0001


Linha 76: Linha 113:
  |}
  |}


====Binários com maior número de bits====


2<sup>5</sup> = 32
2<sup>5</sup> = 32
Linha 92: Linha 130:


2<sup>12</sup> = 4096 -> 4 Ki bit
2<sup>12</sup> = 4096 -> 4 Ki bit
2<sup>13</sup> = 8192 -> 8 Ki bit


...
...


2<sup>20</sup> = 1 048 576 -> 1024 Kibi bit -> 1 Mi bit
2<sup>20</sup> = 1 048 576 -> 1024 Ki bit -> 1 Mi bit
 
2<sup>21</sup> = 2 097 152 -> 2 Mi bit


...
...
Linha 102: Linha 144:


...
...
2<sup>40</sup> = 1024 Gi bit ->  Ti bit


;[http://pt.wikipedia.org/wiki/Prefixo_SI Prefixos do Sistema Internacional (SI)] X [http://pt.wikipedia.org/wiki/Prefixo_bin%C3%A1rio Prefixos Binários]
;[http://pt.wikipedia.org/wiki/Prefixo_SI Prefixos do Sistema Internacional (SI)] X [http://pt.wikipedia.org/wiki/Prefixo_bin%C3%A1rio Prefixos Binários]
===Resumo Sistema Binário===
{| border=1 style="text-align: center;"
|+ Exemplo de binário de 8 bits: 10111100<sub>2</sub> -> 188<sub>10</sub>
|-
| Valores posicionais || 128 ||  64 ||  32 ||  16 ||  8 ||  4 ||  2 || 1
|-
| Potências de 2 || 2<sup>7</sup> || 2<sup>6</sup> || 2<sup>5</sup> || 2<sup>4</sup> || 2<sup>3</sup> || 2<sup>2</sup> || 2<sup>1</sup> || 2<sup>0</sup>
|-
| Exemplo binário || 1 || 0 || 1 || 1 || 1 || 1 || 0 || 0
|-
|  || MSB || ||  ||  ||  ||  ||  || LSB
|-
|}
:'''MSB''': Bit mais significativo (''Most Significant Bit'')
:'''LSB''': Bit menos significativo (''Less Significant Bit'')
===Conversão de Bases===
Referências: <ref name="TOCCI">TOCCI, R.J.; WIDMER, N.S.; MOSS, G.L. Sistemas Digitais: princípios e aplicações, São Paulo: Pearson, 2011.</ref>.
;Binário -> Decimal: Para converter de binário para decimal, soma-se os pesos das posições em que o número binário tiver um bit 1.
:Exemplos:
:'''101101''' = 1 x 2<sup>5</sup> + 1 x 2<sup>3</sup> + 1 x 2<sup>2</sup> + 1 x 2<sup>0</sup> = 32 + 8 + 4 + 1 = '''45'''
:'''10100011''' = 128 + 32 + 2 + 1 = '''163'''
;Decimal -> Binário:Uma das maneiras de converter um número decimal em binário e realizar divisões sucessivas por 2.
:Exemplo:
:'''25'''/2 = 12 + resto '''1'''
:12/2 =  6 + resto '''0'''
: 6/2 =  3 + resto '''0'''
: 3/2 =  1 + resto '''1'''
: 1/2 =  0 + resto '''1'''
: -> '''11001''' (O bit mais significativo (MSB) é o último resto)
Simplificando o processo de representar a divisão por 2:
25 -> 1
12 -> 0
  6 -> 0
  3 -> 1
  1 -> 1
  0
Outra maneira de converter um número decimal em binário é expressar o decimal como soma de potências de 2 (processo inverso a conversão de binário para decimal), utilizando a tabela de pesos dos bits:
{| border=1 style="text-align: center;"
|-
| Valores posicionais || 128 ||  64 ||  32 ||  16 ||  8 ||  4 ||  2 || 1
|-
| Exemplo binário || 0 || 0 || 0 || 1 || 1 || 0 || 0 || 1
|-
|}
===Exercícios:===
#Converter o binário 11000110<sub>2</sub> em decimal;
#Converter o binário 100011011011<sub>2</sub> em decimal;
#Qual o peso do MSB (Bit mais significativo) de um número de 12 bits?
#Qual a faixa total de valores decimais que podemos representar com 8 bits?
#Quantos bits são necessários para representar valores decimais de 0 a 12.500?
#Converter o decimal 729<sub>10</sub> em binário;
#Converter o decimal 378<sub>10</sub> em um número binário de 16 bits.


==Sistema Octal:==
==Sistema Octal:==
Linha 109: Linha 214:
:Base: 8
:Base: 8
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7
:Exemplo:
::173<sub>8</sub>
:::= 1 x 8<sup>2</sup> + 7 x 8<sup>1</sup> + 3 x 8<sup>0</sup>
:::= 1 x 64 + 7 x 8 + 3 X 1
:::= 123<sub>10</sub>


1 7 3
| | +-> (Peso  1)
| +---> (Peso  8)
+-----> (Peso 64)
===Correspondência entre '''binário de 3 bits''' e '''octal'''===
{| border="1" cellpadding="2" style="text-align: center;"
{| border="1" cellpadding="2" style="text-align: center;"
|+ Correspondência entre '''binário de 3 bits''' e '''octal'''
  !Decimal
!Decimal
  !Binário
  !Binário
  !Octal
  !Octal
Linha 134: Linha 249:
  |}
  |}


;Contagem em Octal
Como cada '''octal''' tem correspondência com um '''binário de 3 bits''', a representação em octal pode ser utilizada como uma forma contraída de representar um número binário.
 
===Contagem em Octal===
0, 1, 2, 3, 4, 5, 6, 7, <br/>
0, 1, 2, 3, 4, 5, 6, 7, <br/>
10, 11, 12, 13, 14, 15, 16, 17, <br/>
10, 11, 12, 13, 14, 15, 16, 17, <br/>
Linha 147: Linha 264:
:Base: 16
:Base: 16
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
:Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
:Exemplo:
::1A4<sub>16</sub>
:::= 1 x 16<sup>2</sup> + 10 x 16<sup>1</sup> + 4 x 16<sup>0</sup>
:::= 1 x 256 + 10 x 16 + 4 x 1
:::= 420<sub>10</sub>


1 A 4
| | +-> (Peso  1)
| +---> (Peso  16)
+-----> (Peso 256)
===Correspondência entre '''binário de 4 bits''' e '''hexadecimal'''===
{| border="1" cellpadding="2" style="text-align: center;"
{| border="1" cellpadding="2" style="text-align: center;"
|+ Correspondência entre '''binário de 4 bits''' e '''hexadecimal'''
  !Decimal
  !Decimal
  !Binário
  !Binário
Linha 179: Linha 306:
  |-
  |-
  |12 || 1100 || C
  |12 || 1100 || C
  |-right
  |-
  |13 || 1101 || D
  |13 || 1101 || D
  |-
  |-
Linha 188: Linha 315:
  |}
  |}


Como cada '''hexadecimal''' tem correspondência com um '''binário de 4 bits''', a representação em hexadecimal pode ser utilizada como uma forma contraída de representar um número binário.
====Exemplo de representação do conteúdo de uma memória usando hexadecimal====
{| border="1" cellpadding="2" style="text-align: center;"
|+'''Memória de 1K Bytes'''
!Endereço
!Byte (binário)
!Byte (hexadecimal)
|-
|0 || 0110 1000 || 68
|-
|1 || 1010 0101 || A5
|-
|2 || 0010 1111 || 2F
|-
|3 || 1011 1100 || BC
|-
|4 || 0100 0000 || 40
|-
|... ||  ||
|-
|1023 || 0000 0000 || 00
|-
|}


;Contagem em Hexadecimal
===Contagem em Hexadecimal===
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F,<br/>
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F,<br/>
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F,<br/>
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F,<br/>
Linha 203: Linha 356:
...<br/>
...<br/>


==Conversão de Bases:<ref name="TOCCI">TOCCI, R.J.; WIDMER, N.S.; MOSS, G.L. Sistemas Digitais: princípios e aplicações, São Paulo: Pearson, 2011.</ref>==
===Conversão de Bases===
===Binário -> Decimal===
 
:Para converter de binário para decimal, soma-se os pesos das posições em que o número binário tiver um bit 1.
;Binário <-> Hexadecimal:Cada digito '''hexadecimal''' é convertido no equivalente binário de '''4 bits''' (conforme tabela), e vice-versa, cada quatro bits binários é convertido no hexa equivalente.  
:Exemplos:
:'''101101''' = 1 x 2<sup>5</sup> + 1 x 2<sup>3</sup> + 1 x 2<sup>2</sup> + 1 x 2<sup>0</sup> = 32 + 8 + 4 + 1 = '''45'''
:'''10100011''' = 128 + 32 + 2 + 1 = '''163'''
===Decimal -> Binário===
:Uma das maneiras de converter um número decimal em binário e realizar divisões sucessivas por 2.
:Exemplo:
:'''25'''/2 = 12 + resto '''1'''
:12/2 =  6 + resto '''0'''
: 6/2 =  3 + resto '''0'''
: 3/2 =  1 + resto '''1'''
: 1/2 =  0 + resto '''1'''
: -> '''11001''' (O bit mais significativo (MSB) é o último resto)
:Outra maneira de converter um número decimal em binário é expressar o decimal como soma de potências de 2 (processo inverso a conversão de binário para decimal).
===Binário <-> Hexadecimal===
:Cada digito hexa é convertido no equivalente binário de 4 bits (conforme tabela), e vice-versa, cada quatro bits binários é convertido no hexa equivalente.  
:Exemplos: Hexa -> Binário
:Exemplos: Hexa -> Binário
:'''A3''' = '''1010 0011'''
:'''A3''' = '''1010 0011'''
Linha 228: Linha 366:
:'''11000101''' = 1100 0101 = '''C5'''
:'''11000101''' = 1100 0101 = '''C5'''


===Resumo Sistema Binário===
;Binário <-> Octal:Cada digito '''octal''' é convertido no equivalente binário de '''3 bits''' (conforme tabela), e vice-versa, cada quatro bits binários é convertido no hexa equivalente.
:Exemplos: Octal -> Binário
{| border=1 style="text-align: center;"
:'''73''' = '''111 011'''
|+ Exemplo de binário de 8 bits: 10111100<sub>2</sub> -> 188<sub>10</sub>
:'''45''' = '''100 101'''
|-
:Exemplos: Binário -> Octal
| Valores posicionais || 128 ||  64 ||  32 ||  16 ||  8 ||  4 ||  2 || 1
:'''110110''' = '''66'''  
|-
:'''1101''' = 001 101 = '''15''' (zeros são acrescentados a esquerda para formar grupos de 3 bits)
| Potências de 2 || 2<sup>7</sup> || 2<sup>6</sup> || 2<sup>5</sup> || 2<sup>4</sup> || 2<sup>3</sup> || 2<sup>2</sup> || 2<sup>1</sup> || 2<sup>0</sup>
|-
| Exemplo binário || 1 || 0 || 1 || 1 || 1 || 1 || 0 || 0
|-
|  || MSB || ||  ||  ||  ||  ||  || LSB
|-
|}
:MSB: Bit mais significativo (''most significant bit'')
:LSB: Bit menos significativo (''less significant bit'')


===Resumo sobre conversões de base:===
===Resumo sobre conversões de base:===
*Quando converter binário em decimal, use o método da soma dos pesos de cada digito;
*Quando converter binário em decimal, use o método da soma dos pesos de cada digito;
*Quando converter decimal em binário, use o método de divisões sucessivas por 2, reunindo os restos da divisão;
*Quando converter decimal em binário, use o método de divisões sucessivas por 2, reunindo os restos da divisão;
*Quando converter binário em hexa, agrupe os bits em grupo de quatro e converta cada grupo no hexa equivalente;
*Quando converter binário em hexadecinal, agrupe os bits em grupo de quatro e converta cada grupo no hexa equivalente;
*Quando converter hexa em binário, converta cada digito em 4 bits equivalentes.
*Quando converter hexadecimal em binário, converta cada digito em 4 bits equivalentes.
*Quando converter binário em octal, agrupe os bits em grupo de três e converta cada grupo no octal equivalente;
*Quando converter octal em binário, converta cada digito em 3 bits equivalentes.


===Exercícios:===
===Exercícios:===
#Converter o binário 100011011011<sub>2</sub> em decimal;
#Converter o hexadecimal B2F<sub>16</sub> em um número binário e depois também em decimal e octal;
#Qual o peso do MSB (Bit mais significativo) de um número de 16 bits?
#Converter o decimal 423<sub>10</sub> em hexadecimal e octal;
#Qual a faixa total de valores decimais que podemos representar com 8 bits?
#Converter o decimal 214<sub>10</sub> em hexadecimal e octal.
#Quantos bits são necessários para representar valores decimais de 0 a 12.500?
#Um '''endereço IP''' é formado por '''32 bits''' representado por '''quatro bytes em decimal'''. Portanto, converter o endereço IP 192.168.40.222 em um binário de 32 bits.
#Converter o decimal 729<sub>10</sub> em binário;
#Converter a '''máscara de rede''' de um endereço IP 255.255.248.0 em um binário de 32 bits.
#Converter o decimal 378<sub>10</sub> em um número binário de 16 bits e depois também em hexadecimal;
#Um '''endereço físico''' de uma placa de rede é formado por '''6 bytes hexadecimal'''. Portanto, converta o endereço físico 10:1f:74:40:ec:ee em binário. Responda quantos bits tem o endereço.
#Converter o hexadecimal B2F<sub>16</sub> em um número binário e depois também em decimal;
#*Visualize o endereçamento '''IP''' e '''MAC''' em uma máquina '''Linux''' com o comando '''ifconfig'''
#Converter o decimal 423<sub>10</sub> em hexa;
#*Nos smartphones com sistema '''Android''' basta abrir o menu "configuração", "sobre o telefone", "estado".
#Converter o decimal 214<sub>10</sub> em hexa.
#Pesquise sobre o comando Linux '''chmod''', usado para ajustar permissões de arquivos e diretórios, utilizando o formato '''octal''':
#*[[Permissoes de acesso a arquivos e diretorios|Permissões de acesso a arquivos e diretórios]]
#*[https://chmod-calculator.com/ Calculadora para chmod ]


==Referências==
==Referências==

Edição atual tal como às 17h36min de 19 de maio de 2022

Sistemas Numéricos

Conceitos fundamentais

bit
É a menor unidade de informação manipulada pelo computador, podendo assumir dois valores, 0 ou 1.
O termo bit é a contração de binary digit.
Palavra binária
n bits formam uma palavra binária, a qual pode representar 2n valores diferentes.
Byte
É o termo clássico utilizado para uma palavra binária de 8 bits, o qual pode representar 28 = 256 combinações diferentes.
Exemplo de binário de 8 bits:
1 0 1 1 1 1 0 0

Sistema Decimal:

Base: 10
Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Exemplo:
537410
= 5 x 103 + 3 x 102 + 7 x 101 + 4 x 100
= 5 x 1000 + 3 x 100 + 7 x 10 + 4 x 1
= 5374
5 3 7 4
| | | +-> Unidade (Peso    1)
| | +---> Dezena  (Peso   10)
| +-----> Centena (Peso  100)
+-------> Milhar  (Peso 1000)

Sistema Binário:

Base: 2
Digitos: 0, 1
Exemplo:
11002
= 1 x 23 + 1 x 22 + 0 x 21 + 0 x 20
= 8 + 4 + 0 + 0
= 12
1 1 0 0
| | | +-> (Peso 1)
| | +---> (Peso 2)
| +-----> (Peso 4)
+-------> (Peso 8)

Algumas combinações de números binários

Bits Combinações Binários
1 21 = 2 0

1

2 22 = 4 00

01

10

11

3 23 = 8 000

001

010

011

100

101

110

111

4 24 = 16 0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

Binários com maior número de bits

25 = 32

26 = 64

27 = 128

28 = 256

29 = 512

210 = 1024 -> 1 Ki bit

211 = 2048 -> 2 Ki bit

212 = 4096 -> 4 Ki bit

213 = 8192 -> 8 Ki bit

...

220 = 1 048 576 -> 1024 Ki bit -> 1 Mi bit

221 = 2 097 152 -> 2 Mi bit

...

230 = 1 073 741 824 -> 1024 Mi bit -> Gi bit

...

240 = 1024 Gi bit -> Ti bit

Prefixos do Sistema Internacional (SI) X Prefixos Binários

Resumo Sistema Binário

Exemplo de binário de 8 bits: 101111002 -> 18810
Valores posicionais 128 64 32 16 8 4 2 1
Potências de 2 27 26 25 24 23 22 21 20
Exemplo binário 1 0 1 1 1 1 0 0
MSB LSB
MSB: Bit mais significativo (Most Significant Bit)
LSB: Bit menos significativo (Less Significant Bit)

Conversão de Bases

Referências: [1].

Binário -> Decimal
Para converter de binário para decimal, soma-se os pesos das posições em que o número binário tiver um bit 1.
Exemplos:
101101 = 1 x 25 + 1 x 23 + 1 x 22 + 1 x 20 = 32 + 8 + 4 + 1 = 45
10100011 = 128 + 32 + 2 + 1 = 163
Decimal -> Binário
Uma das maneiras de converter um número decimal em binário e realizar divisões sucessivas por 2.
Exemplo:
25/2 = 12 + resto 1
12/2 = 6 + resto 0
6/2 = 3 + resto 0
3/2 = 1 + resto 1
1/2 = 0 + resto 1
-> 11001 (O bit mais significativo (MSB) é o último resto)
Simplificando o processo de representar a divisão por 2:
25 -> 1
12 -> 0
 6 -> 0
 3 -> 1
 1 -> 1
 0

Outra maneira de converter um número decimal em binário é expressar o decimal como soma de potências de 2 (processo inverso a conversão de binário para decimal), utilizando a tabela de pesos dos bits:

Valores posicionais 128 64 32 16 8 4 2 1
Exemplo binário 0 0 0 1 1 0 0 1

Exercícios:

  1. Converter o binário 110001102 em decimal;
  2. Converter o binário 1000110110112 em decimal;
  3. Qual o peso do MSB (Bit mais significativo) de um número de 12 bits?
  4. Qual a faixa total de valores decimais que podemos representar com 8 bits?
  5. Quantos bits são necessários para representar valores decimais de 0 a 12.500?
  6. Converter o decimal 72910 em binário;
  7. Converter o decimal 37810 em um número binário de 16 bits.

Sistema Octal:

Base: 8
Digitos: 0, 1, 2, 3, 4, 5, 6, 7
Exemplo:
1738
= 1 x 82 + 7 x 81 + 3 x 80
= 1 x 64 + 7 x 8 + 3 X 1
= 12310
1 7 3
| | +-> (Peso  1)
| +---> (Peso  8)
+-----> (Peso 64)

Correspondência entre binário de 3 bits e octal

Decimal Binário Octal
0 000 0
1 001 1
2 010 2
3 011 3
4 100 4
5 101 5
6 110 6
7 111 7

Como cada octal tem correspondência com um binário de 3 bits, a representação em octal pode ser utilizada como uma forma contraída de representar um número binário.

Contagem em Octal

0, 1, 2, 3, 4, 5, 6, 7,
10, 11, 12, 13, 14, 15, 16, 17,
20, ... 27,
...
70, ... 77,
100, ... 107,
...

Sistema Hexadecimal:

Base: 16
Digitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Exemplo:
1A416
= 1 x 162 + 10 x 161 + 4 x 160
= 1 x 256 + 10 x 16 + 4 x 1
= 42010
1 A 4
| | +-> (Peso   1)
| +---> (Peso  16)
+-----> (Peso 256)

Correspondência entre binário de 4 bits e hexadecimal

Decimal Binário Hexadecimal
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F

Como cada hexadecimal tem correspondência com um binário de 4 bits, a representação em hexadecimal pode ser utilizada como uma forma contraída de representar um número binário.

Exemplo de representação do conteúdo de uma memória usando hexadecimal

Memória de 1K Bytes
Endereço Byte (binário) Byte (hexadecimal)
0 0110 1000 68
1 1010 0101 A5
2 0010 1111 2F
3 1011 1100 BC
4 0100 0000 40
...
1023 0000 0000 00

Contagem em Hexadecimal

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F,
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F,
20, ... 2F,
30, ... 3F,
...
90, ... 9F,
A0, ... AF,
B0, ... BF,
...
F0, ... FF,
100, ..., 10F,
...

Conversão de Bases

Binário <-> Hexadecimal
Cada digito hexadecimal é convertido no equivalente binário de 4 bits (conforme tabela), e vice-versa, cada quatro bits binários é convertido no hexa equivalente.
Exemplos: Hexa -> Binário
A3 = 1010 0011
7E = 0111 1110
Exemplos: Binário -> Hexa
110110 = 0011 0110 = 36 (zeros são acrescentados a esquerda para formar grupos de 4 bits)
11000101 = 1100 0101 = C5
Binário <-> Octal
Cada digito octal é convertido no equivalente binário de 3 bits (conforme tabela), e vice-versa, cada quatro bits binários é convertido no hexa equivalente.
Exemplos: Octal -> Binário
73 = 111 011
45 = 100 101
Exemplos: Binário -> Octal
110110 = 66
1101 = 001 101 = 15 (zeros são acrescentados a esquerda para formar grupos de 3 bits)

Resumo sobre conversões de base:

  • Quando converter binário em decimal, use o método da soma dos pesos de cada digito;
  • Quando converter decimal em binário, use o método de divisões sucessivas por 2, reunindo os restos da divisão;
  • Quando converter binário em hexadecinal, agrupe os bits em grupo de quatro e converta cada grupo no hexa equivalente;
  • Quando converter hexadecimal em binário, converta cada digito em 4 bits equivalentes.
  • Quando converter binário em octal, agrupe os bits em grupo de três e converta cada grupo no octal equivalente;
  • Quando converter octal em binário, converta cada digito em 3 bits equivalentes.

Exercícios:

  1. Converter o hexadecimal B2F16 em um número binário e depois também em decimal e octal;
  2. Converter o decimal 42310 em hexadecimal e octal;
  3. Converter o decimal 21410 em hexadecimal e octal.
  4. Um endereço IP é formado por 32 bits representado por quatro bytes em decimal. Portanto, converter o endereço IP 192.168.40.222 em um binário de 32 bits.
  5. Converter a máscara de rede de um endereço IP 255.255.248.0 em um binário de 32 bits.
  6. Um endereço físico de uma placa de rede é formado por 6 bytes hexadecimal. Portanto, converta o endereço físico 10:1f:74:40:ec:ee em binário. Responda quantos bits tem o endereço.
    • Visualize o endereçamento IP e MAC em uma máquina Linux com o comando ifconfig
    • Nos smartphones com sistema Android basta abrir o menu "configuração", "sobre o telefone", "estado".
  7. Pesquise sobre o comando Linux chmod, usado para ajustar permissões de arquivos e diretórios, utilizando o formato octal:

Referências

  1. TOCCI, R.J.; WIDMER, N.S.; MOSS, G.L. Sistemas Digitais: princípios e aplicações, São Paulo: Pearson, 2011.

--Evandro.cantu (discussão) 10h54min de 12 de junho de 2014 (BRT)