(Parte 1 de 2)

Cap2 – Representação de Números e Caracteres.

Página 1 de 9

2. Representação de Numeros e Caracteres.

Bit= BInary digiT = vale sempre 0 ou 1

2.1 Conceitos básicos elemento básico de informação

Byte= 8 bits processados em paralelo (ao mesmo tempo)
Word= 2 bytes = 16 bits

Double word = 2 words = 4 bytes = 32 bits Nibble = 4 bits (utilidade para BCD)

Para 1 byte:7 6 5 4 3 2 1 0

Posição de bits: 0 1 0 1 0 1 0 1

byte alto (high byte)| byte baixo (low byte)

Obs: Words são armazenados em bytes consecutivos em memórias de 8 bits. Byte baixo = byte inferior ou byte de menor ordem -> endereço N Byte alto = byte superior ou byte de maior ordem -> endereço N+1

Cap2 – Representação de Números e Caracteres.

Página 2 de 9

2.2 Representação de números

Números em base binária (base 2):

a) 1 byte b) 1 word

0101011101101110b = 0.215 + 1.214 ++ 1.2 + 1.21 + 0.20

= 576E16 ou 576Eh (mais fácil de representar!)

Números em base octal (base 8): a) byte

2578= 2.82 + 5.81 + 7.80

b) word

0573268= 0.85 + 5.84 + 7.83 + 3.82 + 2.81 + 6.80

Cap2 – Representação de Números e Caracteres.

Página 3 de 9

Números em base hexadecimal (base 16): a) byte

D516= 13.161 + 5.160

b) word

A03916= 10.163 + 0.162 + 3.161 + 9.160

Conversão entre bases numéricas:

Tipo de conversão Procedimento

Decimal => Binário Divisões sucessivas por 2 até se obter zero no quociente; leitura dos dígitos binários de baixo para cima.

Binário = > Decimal Soma de potências de 2 cujo expoente é a posição do bit e cujo coeficiente é o próprio bit.

Hexadecimal => Binário Expandir cada dígito hexa em quatro dígitos binários segundo seu valor.

Binário => Hexadecimal Compactar cada quatro dígitos binários em um único dígito hexa segundo seu valor.

Decimal => Hexadecimal Divisões sucessivas por 16 até se obter zero no quociente; leitura dos dígitos de baixo para cima.

Hexadecimal => Decimal Soma de potências de 16 cujo expoente é a posição do dígito e cujo coeficiente é o valor do próprio dígito hexa.

Cap2 – Representação de Números e Caracteres.

Página 4 de 9

2.3 Representação sinalizada e não sinalizada de números inteiros:

valor sinalizado bit de sinal = 1 => " - " (negativo)

+1_

01001110 <= número com todos os bits invertidos 01001111 <= valor do número (magnitude)

Cap2 – Representação de Números e Caracteres.

Página 5 de 9

valor não sinalizado = 0.215 + 1.214 ++ 1.2 + 1.21 + 1.20

valor sinalizado bit de sinal = 0 => " + " (positivo) = valor igual ao não sinalizado

valor não sinalizado = 1.215 + 1.214 ++ 1.2 + 1.21 + 1.20

bit de sinal = 1 => " - " (negativo) valor sinalizado = a ser calculado considerando o número em C2

Alguns números em hexadecimal, em representação sinalizada:

0FFFh positivo, 2 bytes EF0h positivo, 3 dígitos hexa, 2 bytes, byte alto 0Eh, byte baixo F0h 1h positivo, 1 byte, 01h 80h positivo, se 2 bytes => 0000000010000000b negativo, se 1 byte => 10000000b 8000h negativo, byte alto 80h, byte baixo 00h C321h negativo FFFFh negativo

Cap2 – Representação de Números e Caracteres.

Página 6 de 9

2.4 Representação de caracteres ASCII:

• Letras e pontuação não são representáveis diretamente em computadores e circuitos lógicos.

• Utiliza-se alguns códigos binários de de 6, 7 ou 8 bits, que atribuem a cada combinação binária um caracter alfa-numérico.

• código mais conhecido e utilizado é o ASCII (American Standard Code for Information Interchange). Veja a tabela 2.5, pagina 32 do livro-texto.

• Exemplos:

Cap2 – Representação de Números e Caracteres.

Página 7 de 9

2.5 Exemplo de um programa processando números

A especificação do programa SOMA:

- iniciar - ler a variável A da memória

(Parte 1 de 2)

Comentários