Informática, perguntado por defaultusuariouser, 10 meses atrás

Como converter 734 de decimal para binário?
RESPOSTA COM EXPLICAÇÃO
Preciso converter 734 de Decimal para Binário. Eu sei que a ordem para a conversão é colocar todas as bases de 2 até chegar a base onde o valor maior que o número a ser convertido será excluído e o próximo será contado.

Exemplo:

1024 512 256 128 64 32 16 8 4 2 1

0 1 0 0 0 0 0 0 0 0 0

A partir daí eu subtraio 734-512= 222 e assim por diante...

A formula eu entendi, porém quando chego na subtração de 222-128=94 eu não consegui entender como funciona o resto.

Teoricamente, no exemplo que estou dando ficaria...

1024 512 256 128 64 32 16 8 4 2 1

0 1 0 1 0 0 0 0 0 0 0

222-128=94

Qual será o próximo bit a ser ativado e porque?

94 é maior que 64, porém o bit abaixo de 128 já foi ativado...

Soluções para a tarefa

Respondido por andreluisgspeax0t
1

Resposta:

0010 1101 1110

Explicação:

Para converter um número DECIMAL  para BINÁRIO sempre faça a pergunta para o BINÁRIO se o bit correspondente é maior que o resto da subtração. Usando a lógica que você apresentou vejamos:

Vamos utilizar o como base de cálculo um NIBLE, que corresponde a 4 bits digitados:

0000 0000 0000 - onde cada bit corresponde a:

2048-1024-512-256    128-64-32-16      8-4-2-1

Agora vamos buscar o número a ser convertido que é 734 perguntando ao BINÁRIO se ele é MAIOR. Se o binário é MAIOR que o número que estamos buscando isso quer dizer que aquele bit é ZERO porque não dá para subtrair o menor valor de um valor maior vejamos:

2048 é maior que 734... A resposta é verdadeira então o bit é ZERO veja

734 - 2048 = ???? não pode haver bit negativo

0

O próximo é 1024: 734 - 1024 = ???

00

Próximo: 512: Aqui 512 é MENOR que o número que buscamos, portanto falso:

734 - 512 = 222 - se o bit correspondente ao 512 foi usado então é 1

001

Próximo 256: 256 é MAIOR que 222? Verdadeiro... Então é ZERO

0010

Próximo: 128: Agora o resto da subtração é 222, onde 128 é MENOR então

222 - 128 = 94

0010 1

Próximo 64: Pergunta 64 é MAIOR que 94 - falso então

94 - 64 = 30

0010 11

Próximo 32: 32 é MAIOR que 30 - verdadeiro então é ZERO

30 - 32 = ???

0010 110

Próximo 16: 16 é MAIOR que 30 - Falso, então é 1

30 - 16 = 14

0010 1101

Próximo 8: 8 é MAIOR que 14 - Falso, então é 1

14 - 8 = 6

0010 1101 1

Próximo 4: 4 é MAIOR que 6 - Falso, então é 1

6 - 4 = 2

0010 1101 11

Próximo 2: 2 é MAIOR que 2 - Falso é igual, então é 1

2 - 2 = 0

0010 1101 111

Próximo 1: 1 é MAIOR que 0 - Verdadeiro, então é 0

0010 1101 1110

Pode ser feito ao contrário também, mas a pergunta deve ser feita para o DECIMAL e não para o BINÁRIO. Questionando o binário se o binário é MAIOR que o DECIMAL o bit será ZERO senão será UM.

Espero ter ajudado

Perguntas interessantes