Mips
• Humanos: sistema decimal. • Computadores: sistema binário. • Qual é o maior número representável na palavra ao computador? • O que acontece quando o resultado é maior do que a capacidade do computador.
4.2 Números com e sem Sinal
• Base 10:
2543=2(103+5(102+4(101+3(100
• Base 2:
1011dois=1(23+0(22+1(21+1(20=11dez
• Representação no MIPS:
[pic]
• Bit mais significativo: direita. • Faixa de números sem sinal: 0 a 232-1:
[pic]
Interface Hardware/Software
• Alguns computadores antigos: sistema decimal (BCD). • Não é mais usado: ineficiente.
Números em ASCII vs. Binário
• ASCII em 32 bits: até 9.999 - ineficiente • Binário: até 4.294.967.297 - + eficiente
Representação de números
• Números reais: infinitos; • no computador: finitos. • Maioria: grande quantidade de zeros à esquerda. • Computador: pode lidar com números até um certo tamanho. • Overflow: tratado pelo sistema operacional. • No computador: é preciso representar nos com sinal. Solução: usar 1 bit. • 1a tentativa: o MSB é usado para sinal. problema: duas representações para o zero. • Solução + usada: complemento de 2:
[pic]
• Vai de –231 até 231-1 • Decorar: de – 2 bilhoes e pouco até 2 bilhões e pouco. • Conversão (boa explicação):
[pic]
Exemplo: converter o número abaixo para decimal:
[pic]
Solução:
[pic]
Interface Hardware/Software: ( Extensão de sinal.
• Carga de palavras (32 bits): funciona da mesma forma para números positivos e negativos. • Carga de bytes: • lbu (sem sinal): • trata da mesma forma bytes positivos ou negativos: os 3 bytes mais significativos são zero. • lb (com sinal): • byte positivo: zeros nos 3 bytes m.s. • byte negativo: 1´s nos 3 bytes m.s. • Overflow: • Soma de dois positivos: MSB não é zero. • Soma de dois números negativos: MSB não é 1. • Subtração positivo-negativo: MSB não é 1.
Interface