• Nenhum resultado encontrado

Binário e Hexadecimal. Como contam os computadores

N/A
N/A
Protected

Academic year: 2021

Share "Binário e Hexadecimal. Como contam os computadores"

Copied!
42
0
0

Texto

(1)

Binário e Hexadecimal

(2)

Bit

• Unidade básica de medida dos computadores

é o bit (binary digit), intoduzida por Claude

Shannon, na sua obra Teoria Matemática da

Computação, de 1948.

• Base de toda a linguagem usada pelos

computadores, o sistema binário, ou de base

dois

(Ex.: Arquitetutas 32/64 bits)

• Graficamente é representado por duas

(3)

Byte

• Designação introduzida pela IBM, em 1956.

• Representado por 8 bits, uma unidade completa de informação.

• O bit é geralmente usado como medida de velocidade na transmissão de dados.

– Ex: ligação à Internet a 100 Mbit/s (bps) corresponde a

dizer que esta ligação consegue tx até 100 milhões de b/s.

• O byte é associado à capacidade de armazenamento de dados.

– Ex: disco rígido de 1 Terabyte tem 1x1012 bytes de

(4)
(5)

Word

• Agrupa um conjunto de bits, variável de

acordo com a arquitetura de processamento

– Arquitetura 16 bit: word = 16 bit (2 Bytes) – Arquitetura 32 bit: word = 32 bit (4 Bytes) – Arquitetura 64 bit: word = 64 bit (8 bytes)

• Doubleword = 2* word

• Halfword = ½ word

(6)

Prefixos dos números binários

• A norma IEC 80000-13: Quantities and units – Part 13:

Information science and technology, publicada em

2008, define os seguintes prefixos binários:

Fator Nome Símbolo Origem Derivação

210 kibi Ki kilobinary: (210)1 kilo: (103)1

220 mebi Mi megabinary: (210)2 mega: (103)2

230 gibi Gi gigabinary: (210)3 giga: (103)3

240 tebi Ti terabinary: (210)4 tera: (103)4

250 pebi Pi petabinary: (210)5 peta: (103)5

260 exbi Ei exabinary: (210)6 exa: (103)6

270 zebi Zi exabinary: (210)7 exa: (103)7

(7)

Exemplos e comparação com SI

1 kibibit 1 Kibit = 210 bit = 1024 bit

1 kilobit 1 kbit = 103 bit = 1000 bit

1 mebibyte 1 MiB = 220 B = 1 048 576 B

1 megabyte 1 MB = 106 B = 1 000 000 B

1 gibibyte 1 GiB = 230 B = 1 073 741 824 B

(8)
(9)

Porquê utilizar binário?

• Representação do número 4096

– Notação binária, 1000000000000 - 13 algarismos – Notação decimal, 4096 – 4 algarismos

• Qual é a vantagem de utilizar binário?

– Simplicidade:

• Mais facilmente implementável em Hw: cartões perfurados (furo=1; sem furo=0, meios magnéticos: magnetizado

Norte=1, magnetizado Sul=0, transístores: on=1, off=0.

– Eficiência:

• Só tem dois valores possíveis, 0 e 1, contra os 10 decimais

– Associado aos valores lógicos:

(10)

Utilizações do binário

• A combinação de bits pode ser utilizada para:

– Representação de caracteres: 1 byte = 1 caracter

• ISO-8859-1 (extensão do ASCII): 1 byte = 1 caracter

– 00101110 representa ‘.’ – 01000001 representa ‘A’

• UTF-8: utiliza entre 1 a 4 bytes

– Representação de números – Representação de cores

(11)

ASCII

• Versão inicial utilizava 7 bits, capaz de

endereçar 128 caracteres

– Não suporta caracteres acentuados

• Na versão estendida, para representar um

caracter precisamos de um byte que equivale

ao conjunto de 8 bit, endereçando 256

caracteres

– Padrão ISO-8859-1 (latin-1), suporta caracteres acentuados: ç, à, é, …

(12)
(13)

Unicode

• Padrão que permite aos computadores

representar e manipular, de forma consistente,

texto de qualquer sistema de escrita existente

• ASCII estendido é insuficiente para utilização

internacional

• Objetivo: substituir os esquemas de codificação

de caracteres existentes pelo Unicode e pelos

esquemas Unicode Transformation Formats

– UTF-7, UTF-8, UTF-16, UTF-32.

• Implementado em várias tecnologias recentes,

nomeadamente XML, Java e SO modernos.

(14)

8-bit Unicode Transformation Format

• Codificação Unicode de comprimento variável.

• Representa qualquer caracter universal

padrão do Unicode, sendo também

compatível com o ASCII

– primeiros 256 caracteres = ao ASCII estendido.

• Adoção gradual como tipo de codificação

padrão para email e páginas web, entre

outros. Em janeiro de 2015 adotado por

82.4% de páginas web

(15)

8-bit Unicode Transformation Format

• Utiliza de um a quatro bytes por carácter:

– 1 byte para codificar os caracteres ASCII.

– 2 bytes para caracteres Latinos com diacríticos e dos alfabetos Grego/Cirílico/Armênio/Hebraico/Sírio/Thaana.

– 3 bytes para o resto do Plano Multilingual Básico. – Existem outros caracteres que necessitam de 4 bytes.

(16)

Números decimais e binários

• Numeração decimal

– cada dígito tem um peso que é 10x superior ao do dígito à sua direita:

• 2015 =

(((2x10 + 0)x10 + 1)x10) + 5 ou 2*103 + 0*102 + 1*101+ 5*100

• Numeração binária

– cada dígito tem um peso que é 2x superior ao do dígito à sua direita:

• 10112 =

(((1x2 + 0)x2 + 1)x2 + 1 ou 1*23 + 0*22 + 1*21 + 1*20

(17)

Numeros binários

• Primeiros 16 números binários e os equivalentes decimais

0000 = 0 1000 = 8 0001 = 1 1001 = 9 0010 = 2 1010 = 10 0011 = 3 1011 = 11 0100 = 4 1100 = 12 0101 = 5 1101 = 13 0110 = 6 1110 = 14 0111 = 7 1111 = 15

(18)

Numeros binários

• Nº de telefone da ESTG

– 1110100101111010100101001100

• O que é que há de “errado” com este número?

– Difícil de tomar nota num guardanapo  – Sujeito a erros de transcrição

– Certamente não irão receber muitos telefonemas • Apesar de os computadores processarem binário,

este não é o melhor sistema para os humanos

(19)

Binário e hexadecimal

• Programadores preferem métodos de

representação mais compactos:

– Historicamente, octal (base 8) e hexadecimal (base 16).

– Octal já não é muito utilizado. – Hexadecimal é o adotado

– Necessita de 6 novos digitos.

• Conversão entre binário e décimal é lenta e deve

ser evitada se não for necessária.

(20)

Relação binário/hexadecimal

• Cada digito hexadecimal permite endereçar 4

bits

• Os dígitos hexa são os 10 decimais mais as 6

primeiras letras do alfabeto, A = 10 … F = 15

– 1100 1010 1101 10102 = C A D A16

0000 = 0 0100 = 4 1000 = 8 1100 = C 0001 = 1 0101 = 5 1001 = 9 1101 = D 0010 = 2 0110 = 6 1010 = A 1110 = E 0011 = 3 0111 = 7 1011 = B 1111 = F

(21)

Codificação da cor

• Muitos programadores web utilizam valores “RGB” para definir cores.

• HTML5 e CSS3 define 140 nomes, 17 HTML/ 123 CSS • Valores RGB baseados no Red, Green, Blue.

• Para definir cores numericamente, é atribuído a cada cor primária um valor numérico que carateriza a sua intensidade;

• O somatório destes parâmetros definem a cor.

• Valor numérico pode ser representado em decimal, ou hexadecimal mas é interpretado pelo PC em binário

(22)

Expressar cor em hexadecimal

• Intensidade varia entre o e 255.

• Exemplos de cores, expressa em hexadecimal:

0x000000 – Preto (R, G e B = 0) 0xFFFFFF – Branco (R,G e B = 255) 0xFF0000 – Vermelho (R = 255, G e B = 0) 0x00FF00 – Verde 0x0000FF – Azul 0xFFFF00 – Amarelo (R e G = 255) 0xAEEEEE – Turquesa 0x808080 – Cinzento (R,G e B = 127)

(23)

Exemplo de aplicação

• Descobrir a cor do logotipo do IPL

– 1º passo: Analisar o código HTML da página do IPLeiria

• Background-color: #B30033

• 2ª passo: Decompor o número hexadecimal nas 3

cores RGB

• R=0xB3; G=0x00; B=0x33

• 3º passo: converter dehexadecimal para decimal

– 0xB3 = 16*11+1*3=179 – 0x00 = 0

– 0x33 = 16*3+1*3 = 51

• 4º passo: introduzir os números decimais numa

ferramenta de criação de cores (ex: paint)

(24)

Hexadecimal para Decimal

Hexadecimal

(25)

Hexadecimal para Decimal

• Técnica

– Multiplicar cada digito hexadecimal por 16n,

onde n é o peso do digíto

– O peso corresponde à posição de cada digito, começando em 0 a partir da direita

(26)

Exemplo

ABC16 => 274810 A B C 16 0 16 1 16 2 Pesos A x 162 161x B 160x C 2560 + 176 + 12 = 2748 11 x 161 10 x 162 160x 12

(27)

Hexadecimal para Binário

Hexadecimal

(28)

Hexadecimal para Binário

• Técnica

– Converter cada digito hexadecimal para a representação binária de 4-bits equivalente

(29)

Exemplo

10AF16 = ?2 1 0 A F 10AF16 => 00010000101011112 0001 0000 1010 1111

(30)

Binário para Hexadecimal

Binário

(31)

Binário para Hexadecimal

• Técnica

– Agrupar os bits 4 a 4, da direita para a esquerda – Converter cada grupo de 4 bits pelo dígito

(32)

Exemplo

10101110112 = ?16

0010 1011 1011

10101110112 => 2BB16 2 B B

(33)

Binário para Decimal

Binário

(34)

Binário para Decimal

• Técnica

– Multiplicar cada bit por 2n, onde n é o peso do

bit

– O peso corresponde à posição de cada bit, começando em 0 a partir da direita

(35)

Exemplo

10102 => 1010 1 0 1 0 2 0 2 1 2 2 2 3 Pesos 1 x 23 22x 0 21x 1 20x 0 8 + 0 + 2 + 0 = 10

(36)

Decimal para Hexadecimal

Decimal

(37)

Decimal para Hexadecimal

• Técnica

– Dividir o n.º decimal sucessivas vezes por 16

– O resto de cada divisão é um dígito hexadecimal – O último resto é o bit mais significativo ( + à

(38)

Exemplo

123410 = ?16 123410 => 1234 16 7 1 1 7 16 16 4 0 4 13 02 04 D 4 216

(39)

Decimal para Binário

Decimal

(40)

Decimal para Binário

• Técnica

– Dividir o n.º decimal sucessivas vezes por 2 – O resto de cada divisão é um dígito binário – O último resto é o bit mais significativo ( + à

(41)

Decimal para binário

21 2 1 0 1 0 1 2 2 5 2 1 2 1 0 0 2110 => 2 0 1 1 0 1 0 12

(42)

Conversor binário/decimal/hexa

Referências

Documentos relacionados

In this work, improved curves are the head versus flow curves predicted based on the correlations presented in Table 2 and improved by a shut-off head prediction

Segundo o mesmo autor, a animação sociocultural, na faixa etária dos adultos, apresenta linhas de intervenção que não se esgotam no tempo livre, devendo-se estender,

cujo locutor deixa entender que ele teria mais coisas fundamentais a dizer, mas que não o faria naquele lugar e momento. Essas “passagens de retenção” remetem ao ensino oral

O segundo Beneficiário será designado pelo Segurado na Proposta de Adesão, podendo ser substituído a qualquer tempo, mediante solicitação formal assinada pelo próprio Segurado, para

(05/06/2003 disponível em: <www.folha.com.br>) Esses dados mostram que existe uma grande preocupação mundial com os recursos hídricos potáveis. 02) A preservação das

Em todas as vezes, nossos olhos devem ser fixados, não em uma promessa apenas, mas sobre Ele, o único fundamento da nossa esperança, e em e através de quem sozinho todas as

TITULAR, e quando for o caso, ao ADICIONAL, por meio do mandato outorgado na Cláusula 6 do presente Contrato, cuja contratação dar-se-á nas hipóteses de: (i) financiamento, para