Converta um número decimal para o formato binário IEEE 754

Autor: John Pratt
Data De Criação: 15 Fevereiro 2021
Data De Atualização: 1 Julho 2024
Anonim
Converta um número decimal para o formato binário IEEE 754 - Conselhos
Converta um número decimal para o formato binário IEEE 754 - Conselhos

Contente

Ao contrário dos humanos, os computadores não usam o sistema numérico decimal. Eles usam um sistema numérico binário ou binário com dois dígitos possíveis, 0 e 1. Portanto, os números são escritos de forma muito diferente no IEEE 754 (um padrão do IEEE para representar números binários com um ponto flutuante) do que no sistema decimal tradicional que devemos estar acostumado. Neste artigo, você aprenderá a escrever um número com precisão simples ou dupla, de acordo com o IEEE 754. Para este método, você precisa saber como converter números para a forma binária. Se você não sabe como fazer isso, pode aprender estudando o artigo Conversão de binário em decimal.

Dar um passo

  1. Escolha precisão simples ou dupla. Ao escrever um número com precisão simples ou dupla, as etapas para uma conversão bem-sucedida serão as mesmas para ambos. A única mudança ocorre na conversão do expoente e da mantissa.
    • Primeiro, precisamos entender o que significa precisão simples. Na representação de ponto flutuante, qualquer número (0 ou 1) é considerado um "bit". Portanto, uma única precisão tem um total de 32 bits divididos em três assuntos diferentes. Esses assuntos consistem em um sinal (1 bit), um expoente (8 bits) e uma mantissa ou fração (23 bits).
    • A precisão dupla, por outro lado, tem a mesma configuração e as mesmas três partes da precisão simples - a única diferença é que será um número maior e mais preciso. Neste caso o sinal terá 1 bit, o expoente 11 bits e a mantissa 52 bits.
    • Neste exemplo, vamos converter o número 85,125 para precisão simples de acordo com o IEEE 754.
  2. Separe o número antes e depois do ponto decimal. Pegue o número que deseja converter e separe-o de forma que fique com um número inteiro e um número decimal. Neste exemplo, assumimos o número 85.125. Você pode separar isso no número inteiro 85 e no decimal 0,125.
  3. Converta o número inteiro em um número binário. Isso se torna o 85 de 85.125, que se tornará 1010101 quando convertido para binário.
  4. Converta a parte decimal em um número binário. Isso é 0,125 de 85,125, que se torna 0,001 no formato binário.
  5. Combine as duas partes do número que foram convertidas em números binários. O número 85 é binário, por exemplo 1010101 e a parte decimal 0,125 é binário 0,001. Se você combiná-los com um ponto decimal, obterá 1010101,001 como a resposta final.
  6. Converta o número binário em notação científica binária. Você pode converter o número em notação científica binária movendo o ponto decimal para a esquerda até que esteja à direita do primeiro bit. Esses números são normalizados, o que significa que o bit principal sempre será 1. Quanto ao expoente, o número de vezes que você move o decimal é o expoente em notação científica binária.
    • Lembre-se de que mover o decimal para a esquerda produz um expoente positivo, enquanto mover o decimal para a direita produz um expoente negativo.
    • Em nosso exemplo, você deve mover o decimal seis vezes para colocá-lo à direita do primeiro bit. O formato resultante então se torna 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Determine o sinal do número e exiba-o em formato binário. Agora você determinará se o número original é positivo ou negativo. Se o número for positivo, escreva esse bit como 0 e, se for negativo, como 1. Como o número original é 85,125 positivo, escreva esse bit como 0. Este é agora o primeiro bit dos 32 bits totais em sua precisão única renderização de acordo com IEEE 754.
    • Determine o expoente com base na precisão. Existe um viés fixo para precisão simples e dupla. A tendência de expoente para precisão simples é 127, o que significa que temos que adicionar o expoente binário encontrado anteriormente. Então, o expoente que você vai usar é 127 + 6 = 133.
      • A precisão dupla, como o nome indica, é mais precisa e pode conter números maiores. Portanto, o viés do expoente 1023. As mesmas etapas usadas para precisão única se aplicam aqui, portanto, o expoente que você pode usar para determinar a precisão dupla é 1029.
    • Converta o expoente em binário. Depois de determinar seu expoente final, você precisa convertê-lo em binário para que possa ser usado na conversão IEEE 754. No exemplo, você pode converter o 133 encontrado na última etapa em 10000101.
    • Determine a mantissa. O aspecto da mantissa, ou a terceira parte da conversão IEEE 754, é o resto do número após o decimal da notação binária científica. Você apenas omite o 1 na frente e copia a parte decimal do número que é multiplicado por dois. Nenhuma conversão binária é necessária! No exemplo, a mantissa se torna 010101001 de 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Finalmente, combine três partes em um número.
      • Finalmente, você combina tudo o que calculamos até agora em sua conversão. O número começará primeiro com 0 ou 1 que você determinou na etapa 7 com base no sinal. No exemplo, você começa com 0.
      • Então você tem o expoente que determinou na etapa 9. No exemplo, o expoente é 10000101.
      • Depois vem a mantissa, terceira e última parte da conversão. Você deduziu isso antes, quando tirou a parte decimal da conversão binária. No exemplo, a mantissa é 010101001.
      • Finalmente, você combina todos esses números uns com os outros. A ordem é sinal-expoente-mantissa. Depois de conectar esses três números binários, preencha o resto da mantissa com zeros.
      • Por exemplo, converter 85,125 para o formato binário IEEE 754 é a solução 0 10000101 01010100100000000000000.