Código de computador 01. Códigos binários. Chave reversa assinada

O código binário é uma forma de registrar informações na forma de uns e zeros. Este é posicional com base 2. Hoje, o código binário (a tabela apresentada um pouco abaixo contém alguns exemplos de escrita de números) é usado em todos os dispositivos digitais, sem exceção. Sua popularidade se deve à alta confiabilidade e simplicidade dessa forma de gravação. A aritmética binária é muito simples e, portanto, fácil de implementar no nível do hardware. os componentes (ou, como também são chamados, lógicos) são muito confiáveis, pois operam em apenas dois estados: um lógico (há corrente) e zero lógico (sem corrente). Assim, comparam-se favoravelmente com componentes analógicos, cuja operação é baseada em processos transitórios.

Como é composta a notação binária?

Vamos descobrir como essa chave é formada. Um bit de código binário pode conter apenas dois estados: zero e um (0 e 1). Ao usar dois bits, é possível escrever quatro valores: 00, 01, 10, 11. Uma entrada de três bits contém oito estados: 000, 001 ... 110, 111. Como resultado, descobrimos que o comprimento de o código binário depende do número de bits. Esta expressão pode ser escrita usando a seguinte fórmula: N =2m, onde: m é o número de dígitos e N é o número de combinações.

Tipos de códigos binários

Nos microprocessadores, essas chaves são usadas para registrar diversas informações processadas. A largura do código binário pode exceder significativamente a memória interna. Nesses casos, os números longos ocupam vários locais de armazenamento e são processados ​​por meio de vários comandos. Nesse caso, todos os setores de memória alocados para código binário multibyte são considerados como um único número.

Dependendo da necessidade de fornecer esta ou aquela informação, distinguem-se os seguintes tipos de chaves:

  • não assinado;
  • códigos de caracteres inteiros diretos;
  • inversos assinados;
  • assinar adicional;
  • Código cinza;
  • Código Gray Express;
  • códigos fracionários.

Vamos dar uma olhada em cada um deles.

Código binário não assinado

Vamos descobrir o que é esse tipo de gravação. Em códigos inteiros sem sinal, cada dígito (binário) representa uma potência de dois. Neste caso, o menor número que pode ser escrito nesta forma é zero, e o máximo pode ser representado pela seguinte fórmula: M = 2 n -1. Esses dois números definem completamente o intervalo da chave que pode ser usada para expressar tal código binário. Vejamos os recursos do formulário de gravação mencionado. Ao utilizar este tipo de chave não assinada, composta por oito bits, o intervalo de números possíveis será de 0 a 255. Um código de dezesseis bits terá um intervalo de 0 a 65535. Em processadores de oito bits, dois setores de memória são usados. para armazenar e escrever esses números, que estão localizados em destinos adjacentes. Comandos especiais permitem trabalhar com essas chaves.

Códigos assinados inteiros diretos

Neste tipo de chave binária, o bit mais significativo é utilizado para registrar o sinal do número. Zero corresponde a mais e um corresponde a menos. Como resultado da introdução deste dígito, o intervalo de números codificados muda para o lado negativo. Acontece que uma chave binária inteira com sinal de oito bits pode escrever números na faixa de -127 a +127. Dezesseis bits - na faixa de -32767 a +32767. Microprocessadores de oito bits usam dois setores adjacentes para armazenar tais códigos.

A desvantagem desta forma de gravação é que os bits de sinal e digitais da chave devem ser processados ​​separadamente. Os algoritmos dos programas que trabalham com esses códigos revelam-se muito complexos. Para alterar e destacar bits de sinal, é necessário utilizar mecanismos de mascaramento deste símbolo, o que contribui para um aumento acentuado no tamanho do software e uma diminuição no seu desempenho. Para eliminar esta desvantagem, foi introduzido um novo tipo de chave - um código binário reverso.

Chave reversa assinada

Esta forma de gravação difere dos códigos diretos apenas porque o número negativo nele contido é obtido pela inversão de todos os bits da chave. Neste caso, os bits digitais e de sinal são idênticos. Graças a isso, os algoritmos para trabalhar com este tipo de código são significativamente simplificados. No entanto, a chave reversa requer um algoritmo especial para reconhecer o caractere do primeiro dígito e calcular o valor absoluto do número. Além de restaurar o sinal do valor resultante. Além disso, nos códigos reverso e direto dos números, duas teclas são usadas para escrever zero. Apesar de este valor não ter sinal positivo ou negativo.

Número binário em complemento de dois assinado

Este tipo de registro não apresenta as desvantagens listadas das chaves anteriores. Esses códigos permitem a soma direta de números positivos e negativos. Neste caso, nenhuma análise do bit de sinal é realizada. Tudo isso é possível porque os números complementares são um anel natural de símbolos, em vez de formações artificiais, como teclas de avanço e reverso. Além disso, um fator importante é que é extremamente fácil realizar cálculos de complementos em códigos binários. Para fazer isso, basta adicionar um à chave reversa. Ao utilizar este tipo de código de sinal, composto por oito dígitos, o intervalo de números possíveis será de -128 a +127. Uma chave de dezesseis bits terá um intervalo de -32768 a +32767. Os processadores de oito bits também usam dois setores adjacentes para armazenar esses números.

O código do complemento binário dois é interessante por causa de seu efeito observável, que é chamado de fenômeno de propagação de sinal. Vamos descobrir o que isso significa. Esse efeito é que no processo de conversão de um valor de byte único em um de byte duplo, basta atribuir os valores dos bits de sinal do byte baixo a cada bit do byte alto. Acontece que você pode usar os bits mais significativos para armazenar o assinado. Neste caso, o valor da chave não muda em nada.

Código cinza

Esta forma de gravação é essencialmente uma chave de uma etapa. Ou seja, no processo de transição de um valor para outro, apenas um bit de informação muda. Neste caso, um erro na leitura dos dados leva a uma transição de uma posição para outra com um ligeiro deslocamento de tempo. No entanto, a obtenção de um resultado completamente incorreto da posição angular com tal processo é completamente excluída. A vantagem desse código é a capacidade de espelhar informações. Por exemplo, ao inverter os bits mais significativos, você pode simplesmente alterar a direção da contagem. Isto acontece graças à entrada de controle Complemento. Neste caso, o valor de saída pode aumentar ou diminuir para uma direção física de rotação do eixo. Como as informações registradas na chave Gray são exclusivamente codificadas por natureza, que não carregam dados numéricos reais, antes de continuar o trabalho é necessário primeiro convertê-las para a forma binária usual de gravação. Isso é feito usando um conversor especial - o decodificador Gray-Binar. Este dispositivo pode ser facilmente implementado no ensino fundamental elementos lógicos tanto hardware quanto software.

Código Expresso Cinza

A chave de uma etapa padrão de Gray é adequada para soluções representadas como números, dois. Nos casos em que seja necessária a implementação de outras soluções, apenas a parte intermediária é recortada desta forma de gravação e utilizada. Como resultado, a natureza de uma etapa da chave é preservada. Porém, neste código, o início do intervalo numérico não é zero. Ele é deslocado pelo valor especificado. Durante o processamento de dados, metade da diferença entre a resolução inicial e a reduzida é subtraída dos pulsos gerados.

Representação de um número fracionário em chave binária de ponto fixo

No processo de trabalho, é necessário operar não apenas com números inteiros, mas também com frações. Tais números podem ser escritos usando códigos diretos, reversos e complementares. O princípio de construção das chaves mencionadas é o mesmo dos números inteiros. Até agora, acreditávamos que a vírgula binária deveria estar à direita do dígito menos significativo. Mas isso não é verdade. Ele pode estar localizado à esquerda do dígito mais significativo (neste caso, apenas números fracionários podem ser escritos como variável) e no meio da variável (podem ser escritos valores mistos).

Representação binária de ponto flutuante

Este formulário é usado para escrever ou vice-versa - muito pequeno. Os exemplos incluem distâncias interestelares ou tamanhos de átomos e elétrons. Ao calcular tais valores, seria necessário usar um código binário muito grande. No entanto, não precisamos levar em conta as distâncias cósmicas com precisão milimétrica. Portanto, a forma de notação de ponto fixo é ineficaz neste caso. Uma forma algébrica é usada para exibir esses códigos. Ou seja, o número é escrito como uma mantissa multiplicada por dez elevado a uma potência que reflete a ordem desejada do número. Você deve saber que a mantissa não deve ser maior que um e não deve ser escrito zero após a vírgula.

Acredita-se que o cálculo binário tenha sido inventado no início do século 18 pelo matemático alemão Gottfried Leibniz. No entanto, como os cientistas descobriram recentemente, muito antes de a ilha polinésia Mangareva ser usada este tipo aritmética. Apesar do fato de que a colonização destruiu quase completamente sistemas originais cálculo, os cientistas restauraram tipos complexos de contagem binária e decimal. Além disso, o cientista cognitivo Nunez afirma que a codificação binária foi usada na China antiga já no século IX aC. e. Outras civilizações antigas, como os maias, também usaram combinações complexas de sistemas decimais e binários para rastrear intervalos de tempo e fenômenos astronômicos.


grego Georgiano
etíope
judaico
Akshara-sankhya Outro Babilônico
egípcio
Etrusco
romano
Danúbio Sótão
Kipu
Maia
Egeu
Símbolos KPPU Posicional , , , , , , , , , , Nega-posicional Simétrico Sistemas mistos Fibonacci Não posicional Unidade (unária)

Sistema numérico binário- sistema numérico posicional com base 2. Graças à sua implementação direta em circuitos eletrônicos digitais usando portas lógicas, o sistema binário é usado em quase todos os computadores modernos e outros dispositivos eletrônicos de computação.

Notação binária de números

No sistema numérico binário, os números são escritos usando dois símbolos ( 0 E 1 ). Para evitar confusão sobre em qual sistema numérico o número está escrito, ele é fornecido com um indicador no canto inferior direito. Por exemplo, um número no sistema decimal 5 10 , em binário 101 2 . Às vezes, um número binário é denotado por um prefixo 0b ou símbolo & (e comercial), Por exemplo 0b101 ou em conformidade &101 .

No sistema numérico binário (como em outros sistemas numéricos, exceto decimal), os dígitos são lidos um de cada vez. Por exemplo, o número 101 2 é pronunciado “um zero um”.

Números naturais

Um número natural escrito no sistema de numeração binário como (a n − 1 a n − 2… a 1 a 0) 2 (\displaystyle (a_(n-1)a_(n-2)\dots a_(1)a_(0))_(2)), tem o significado:

(a n − 1 a n − 2… a 1 a 0) 2 = ∑ k = 0 n − 1 a k 2 k , (\displaystyle (a_(n-1)a_(n-2)\dots a_(1)a_( 0))_(2)=\soma _(k=0)^(n-1)a_(k)2^(k),)

Números negativos

Os números binários negativos são denotados da mesma forma que os números decimais: por um sinal “-” na frente do número. Ou seja, um número inteiro negativo escrito no sistema numérico binário (− a n − 1 a n − 2… a 1 a 0) 2 (\displaystyle (-a_(n-1)a_(n-2)\dots a_(1)a_(0))_(2)), tem o valor:

(− a n − 1 a n − 2 … a 1 a 0) 2 = − ∑ k = 0 n − 1 a k 2 k .

(\displaystyle (-a_(n-1)a_(n-2)\pontos a_(1)a_(0))_(2)=-\soma _(k=0)^(n-1)a_( k)2^(k).)

código adicional.

Números fracionários (a n − 1 a n − 2… a 1 a 0 , a − 1 a − 2… a − (m − 1) a − m) 2 (\displaystyle (a_(n-1)a_(n-2)\dots a_(1)a_(0),a_(-1)a_(-2)\pontos a_(-(m-1))a_(-m))_(2)), tem o valor:

(a n − 1 a n − 2 … a 1 a 0 , a − 1 a − 2 … a − (m − 1) a − m) 2 = ∑ k = − m n − 1 a k 2 k , (\displaystyle (a_( n-1)a_(n-2)\pontos a_(1)a_(0),a_(-1)a_(-2)\pontos a_(-(m-1))a_(-m))_( 2)=\soma _(k=-m)^(n-1)a_(k)2^(k),)

Adição, subtração e multiplicação de números binários

Tabela de adição

Um exemplo de adição de coluna (a expressão decimal 14 10 + 5 10 = 19 10 em binário se parece com 1110 2 + 101 2 = 10011 2):

Exemplo de multiplicação de colunas (a expressão decimal 14 10 * 5 10 = 70 10 em binário parece 1110 2 * 101 2 = 1000110 2):

Começando com o número 1, todos os números são multiplicados por dois. O ponto que vem depois do 1 é chamado de ponto binário.

Convertendo números binários em decimais

Digamos que recebemos um número binário 110001 2 . Para converter para decimal, escreva-o como uma soma de dígitos da seguinte forma:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

A mesma coisa um pouco diferente:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Você pode escrever isso em forma de tabela assim:

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Mova da direita para a esquerda. Sob cada unidade binária, escreva seu equivalente na linha abaixo. Adicione os números decimais resultantes. Assim, o número binário 110001 2 é equivalente ao número decimal 49 10.

Convertendo números binários fracionários em decimais

Precisa converter o número 1011010,101 2 ao sistema decimal. Vamos escrever esse número da seguinte forma:

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 −3 = 90,625

A mesma coisa um pouco diferente:

1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625

Ou de acordo com a tabela:

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Transformação pelo método de Horner

Para converter números de binário para decimal usando este método, é necessário somar os números da esquerda para a direita, multiplicando o resultado obtido anteriormente pela base do sistema (neste caso, 2). O método de Horner é geralmente usado para converter do sistema binário para decimal. A operação reversa é difícil, pois requer habilidades de adição e multiplicação no sistema numérico binário.

Por exemplo, número binário 1011011 2 convertido para o sistema decimal da seguinte forma:

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

Ou seja, no sistema decimal esse número será escrito como 91.

Convertendo a parte fracionária de números usando o método de Horner

Os dígitos são retirados do número da direita para a esquerda e divididos pela base do sistema numérico (2).

Por exemplo 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Resposta: 0,1101 2 = 0,8125 10

Convertendo números decimais em binários

Digamos que precisamos converter o número 19 em binário. Você pode usar o seguinte procedimento:

19/2 = 9 com resto 1
9/2 = 4 com resto 1
4/2 = 2 sem resto 0
2/2 = 1 sem resto 0
1/2 = 0 com resto 1

Então, dividimos cada quociente por 2 e escrevemos o resto no final notação binária. Continuamos dividindo até que o quociente seja 0. Escrevemos o resultado da direita para a esquerda. Ou seja, o dígito inferior (1) será o mais à esquerda, etc. Como resultado, obtemos o número 19 em notação binária: 10011 .

Convertendo números decimais fracionários em binários

Se o número original tiver uma parte inteira, ele será convertido separadamente da parte fracionária. A conversão de um número fracionário do sistema numérico decimal para o sistema binário é realizada usando o seguinte algoritmo:

  • A fração é multiplicada pela base do sistema numérico binário (2);
  • No produto resultante, isola-se a parte inteira, que é considerada o dígito mais significativo do número no sistema numérico binário;
  • O algoritmo termina se a parte fracionária do produto resultante for igual a zero ou se a precisão de cálculo necessária for alcançada. Caso contrário, os cálculos continuam na parte fracionária do produto.

Exemplo: você precisa converter um número decimal fracionário 206,116 para um número binário fracionário.

A tradução da parte inteira dá 206 10 =11001110 2 de acordo com os algoritmos descritos anteriormente. Multiplicamos a parte fracionária de 0,116 pela base 2, inserindo as partes inteiras do produto nas casas decimais do número binário fracionário desejado:

0,116 2 = 0 ,232
0,232 2 = 0 ,464
0,464 2 = 0 ,928
0,928 2 = 1 ,856
0,856 2 = 1 ,712
0,712 2 = 1 ,424
0,424 2 = 0 ,848
0,848 2 = 1 ,696
0,696 2 = 1 ,392
0,392 2 = 0 ,784
etc.

Assim 0,116 10 ≈ 0, 0001110110 2

Obtemos: 206,116 10 ≈ 11001110,0001110110 2

Aplicativos

Em dispositivos digitais

O sistema binário é utilizado em dispositivos digitais por ser o mais simples e atender aos requisitos:

  • Quanto menos valores houver no sistema, mais fácil será fabricar elementos individuais que operem com base nesses valores. Em particular, dois dígitos do sistema numérico binário podem ser facilmente representados por muitos fenômenos físicos: há corrente (a corrente é maior que o valor limite) - não há corrente (a corrente é menor que o valor limite), o magnético a indução do campo é maior que o valor limite ou não (a indução do campo magnético é menor que o valor limite) etc.
  • Quanto menos estados um elemento tiver, maior será a imunidade ao ruído e mais rápido ele poderá operar. Por exemplo, para codificar três estados através da magnitude da tensão, corrente ou indução de campo magnético, será necessário introduzir dois valores limite e dois comparadores.

Na computação, escrever números binários negativos em complemento de dois é amplamente utilizado. Por exemplo, o número −5 10 poderia ser escrito como −101 2, mas seria armazenado como 2 em um computador de 32 bits.

No sistema inglês de medidas

Ao indicar dimensões lineares em polegadas, tradicionalmente são usadas frações binárias em vez de decimais, por exemplo: 5¾″, 7 15/16″, 3 11/32″, etc.

Generalizações

O sistema numérico binário é uma combinação do sistema de codificação binário e uma função de ponderação exponencial com base igual a 2. Deve-se notar que um número pode ser escrito em código binário, e o sistema numérico pode não ser binário, mas com um base diferente. Exemplo: codificação BCD, em que os dígitos decimais são escritos em binário e o sistema numérico é decimal.

História

  • Um conjunto completo de 8 trigramas e 64 hexagramas, análogos aos numerais de 3 e 6 bits, era conhecido na China antiga nos textos clássicos do Livro das Mutações. A ordem dos hexagramas em livro de mudanças, organizados de acordo com os valores dos dígitos binários correspondentes (de 0 a 63), e o método para obtê-los foi desenvolvido pelo cientista e filósofo chinês Shao Yong no século XI. No entanto, não há evidências que sugiram que Shao Yun entendesse as regras da aritmética binária, organizando tuplas de dois caracteres em ordem lexicográfica.
  • Conjuntos, que são combinações de dígitos binários, foram usados ​​pelos africanos na adivinhação tradicional (como Ifa) juntamente com a geomancia medieval.
  • Em 1854, o matemático inglês George Boole publicou um artigo marcante descrevendo sistemas algébricos aplicados à lógica, que agora é conhecida como álgebra booleana ou álgebra da lógica. Seu cálculo lógico estava destinado a desempenhar um papel importante no desenvolvimento dos modernos circuitos eletrônicos digitais.
  • Em 1937, Claude Shannon apresentou sua tese de doutorado para defesa. Análise simbólica de circuitos de relés e comutação em , em que a álgebra booleana e a aritmética binária foram usadas em relação a relés e interruptores eletrônicos. Toda a tecnologia digital moderna é essencialmente baseada na dissertação de Shannon.
  • Em novembro de 1937, George Stibitz, que mais tarde trabalhou no Bell Labs, criou o computador “Modelo K” baseado em relés. K itchen", cozinha onde foi realizada a montagem), que realizou adição binária. No final de 1938, o Bell Labs lançou um programa de pesquisa liderado por Stiebitz. O computador criado sob sua liderança, concluído em 8 de janeiro de 1940, era capaz de realizar operações com números complexos. Durante uma demonstração na conferência da American Mathematical Society no Dartmouth College em 11 de setembro de 1940, Stibitz demonstrou a capacidade de enviar comandos para uma calculadora remota de números complexos por linha telefônica usando um teletipo. Esta foi a primeira tentativa de usar um computador remoto através de uma linha telefônica. Os participantes da conferência que testemunharam a manifestação incluíram John von Neumann, John Mauchly e Norbert Wiener, que mais tarde escreveram sobre o assunto em suas memórias.
  • No frontão do edifício (antigo Centro de Computação da Seção Siberiana da Academia de Ciências da URSS) na Cidade Acadêmica de Novosibirsk há um número binário 1000110, igual a 70 10, que simboliza a data de construção do edifício (

Os computadores não entendem palavras e números da mesma forma que as pessoas. Moderno programas permite que o usuário final ignore isso, mas nos níveis mais baixos seu computador opera com um sinal elétrico binário que tem apenas dois estados: se há corrente ou não. Para “entender” dados complexos, seu computador deve codificá-los em formato binário.

O sistema binário é baseado em dois dígitos, 1 e 0, correspondentes aos estados ligado e desligado que seu computador pode entender. Você provavelmente está familiarizado com o sistema decimal. Ele usa dez dígitos, de 0 a 9, e depois passa para a próxima ordem para formar números de dois dígitos, sendo cada número dez vezes maior que o anterior. O sistema binário é semelhante, com cada dígito sendo duas vezes maior que o anterior.

Contando em formato binário

Na expressão binária, o primeiro dígito equivale a 1 no sistema decimal. O segundo dígito é 2, o terceiro é 4, o quarto é 8 e assim por diante - dobrando a cada vez. Somando todos esses valores você obterá o número no formato decimal.

1111 (em binário) = 8 + 4 + 2 + 1 = 15 (em decimal)

A contabilização de 0 nos dá 16 valores possíveis para quatro bits binários. Mova 8 bits e você obterá 256 valores possíveis. Isso ocupa muito mais espaço para representar, já que quatro dígitos decimais nos dão 10.000 valores possíveis. É claro que o código binário ocupa mais espaço, mas os computadores entendem os arquivos binários muito melhor do que o sistema decimal. E para algumas coisas, como processamento lógico, o binário é melhor que o decimal.

Deve-se dizer que existe outro sistema básico que é utilizado na programação: hexadecimal. Embora os computadores não operem em formato hexadecimal, os programadores o utilizam para representar endereços binários em um formato legível por humanos ao escrever código. Isso ocorre porque dois dígitos em um número hexadecimal podem representar um byte inteiro, o que significa que substituem oito dígitos em binário. Sistema hexadecimal usa os números de 0 a 9, bem como as letras de A a F, para criar seis dígitos adicionais.

Por que os computadores usam arquivos binários?

Resposta curta: hardware e as leis da física. Cada caractere do seu computador é um sinal elétrico e, nos primórdios da computação, medir sinais elétricos era muito mais difícil. Fazia mais sentido distinguir apenas o estado “ligado”, representado por uma carga negativa, e o estado “desligado”, representado por uma carga positiva.

Para quem não sabe por que “desligado” é representado por carga positiva, é porque os elétrons têm carga negativa, e mais elétrons significam mais corrente com carga negativa.

Assim, os primeiros computadores do tamanho de uma sala usavam arquivos binários para criar seus sistemas e, embora usassem equipamentos mais antigos e mais volumosos, trabalhavam com base nos mesmos princípios fundamentais. Os computadores modernos usam o que é chamado transistor para realizar cálculos com código binário.

Aqui está um diagrama de um transistor típico:

Essencialmente, permite que a corrente flua da fonte para o dreno se houver corrente na porta. Isso forma uma chave binária. Os fabricantes podem fabricar esses transistores incrivelmente pequenos – até 5 nanômetros, ou o tamanho de duas fitas de DNA. É assim que os processadores modernos funcionam, e mesmo eles podem sofrer de problemas para distinguir entre estados ligados e desligados (embora isso se deva ao fato de seu tamanho molecular irrealista estar sujeito a a estranheza da mecânica quântica).

Por que apenas sistema binário

Então você pode estar pensando: “Por que apenas 0 e 1? Por que não adicionar outro número? Embora isso se deva em parte às tradições de criação de computadores, ao mesmo tempo, adicionar outro dígito significaria a necessidade de distinguir outro estado da corrente, não apenas “desligado” ou “ligado”.

O problema aqui é que, se você quiser usar vários níveis de tensão, precisará de uma maneira de realizar cálculos facilmente sobre eles, e o hardware atual capaz de fazer isso não é viável como substituto para cálculos binários. Por exemplo, existe um chamado computador triplo, desenvolvido na década de 1950, mas o desenvolvimento parou aí. Lógica ternária mais eficiente que o binário, mas ainda não existe um substituto eficaz para o transistor binário, ou pelo menos nenhum transistor na mesma escala minúscula que o binário.

A razão pela qual não podemos usar a lógica ternária se resume à forma como os transistores são conectados em um computador e como são usados ​​para cálculos matemáticos. O transistor recebe informações em duas entradas, realiza uma operação e retorna o resultado para uma saída.

Assim, a matemática binária é mais fácil para um computador do que qualquer outra coisa. A lógica binária é facilmente convertida em sistemas binários, com True e False correspondendo aos estados On e Off.

Uma tabela verdade binária executada em lógica binária terá quatro saídas possíveis para cada operação fundamental. Mas, como as portas triplas usam três entradas, a tabela verdade tripla teria 9 ou mais. Enquanto o sistema binário tem 16 operadores possíveis (2^2^2), o sistema ternário teria 19683 (3^3^3). O dimensionamento se torna um problema porque, embora o Trinity seja mais eficiente, também é exponencialmente mais complexo.

Quem sabe? No futuro, poderemos ver computadores ternários à medida que a lógica binária enfrenta desafios de miniaturização. Por enquanto, o mundo continuará a operar em modo binário.

Código binário- esta é a apresentação da informação combinando os símbolos 0 ou 1. Às vezes pode ser muito difícil compreender o princípio da codificação da informação na forma destes dois números, mas tentaremos explicar tudo detalhadamente.

A propósito, em nosso site você pode converter qualquer texto em código decimal, hexadecimal e binário usando a Calculadora de Código Online.

Quando vemos algo pela primeira vez, muitas vezes fazemos uma pergunta lógica sobre como aquilo funciona. Qualquer nova informação é percebida por nós como algo complexo ou criada exclusivamente para visualização de longe, mas para quem deseja saber mais sobre código binário, uma verdade simples é revelada - o código binário não é nada difícil de entender, como nos parece. Por exemplo, a letra inglesa T em sistema binário terá o seguinte formato - 01010100, E - 01000101 e a letra X - 01011000. Com base nisso, entendemos que a palavra inglesa TEXT na forma de código binário ficará assim: 01010100 01000101 01011000 01010100. O computador entende exatamente isso representação de símbolos para esta palavra, Bom, preferimos vê-la na apresentação das letras do alfabeto.

A data código binárioé ativamente utilizado na programação, pois é graças a ele que os computadores funcionam. Mas a programação não se reduz a um conjunto infinito de zeros e uns. Por se tratar de um processo bastante trabalhoso, foram tomadas medidas para simplificar o entendimento entre o computador e o ser humano. A solução para o problema foi a criação de linguagens de programação (BASIC, C++, etc.). Como resultado, o programador escreve um programa em uma linguagem que ele entende e, em seguida, um programa compilador traduz tudo em código de máquina, iniciando o computador.

Convertendo um número natural do sistema numérico decimal para o sistema binário.

Para converter números do sistema numérico decimal para o sistema numérico binário, eles usam um “algoritmo de substituição” que consiste na seguinte sequência de ações:

1. Selecione o número desejado e divida-o por 2. Se o resultado da divisão for com resto, então o número do código binário será 1, se não houver resto será 0.

2. Descartando o resto, se houver, divida novamente o número obtido como resultado da primeira divisão por 2. Defina o número do sistema binário em função da presença do resto.

3. Continuamos dividindo, calculando o número do sistema binário a partir do resto, até chegarmos a um número que não pode ser dividido - 0.

4. Neste ponto, o código binário é considerado pronto.

Por exemplo, vamos converter o número 7 em binário:

1,7:2 = 3,5. Como há resto, escrevemos 1 como o primeiro número do código binário.

2. 3: 2 = 1,5. Repetimos o procedimento escolhendo um número de código entre 1 e 0 dependendo do restante.

3. 1:2 = 0,5. Selecionamos 1 novamente usando o mesmo princípio.

4. Como resultado, obtemos, convertido do sistema numérico decimal para o sistema numérico binário, o código 111.

Desta forma, você pode traduzir um número infinito de números. Agora vamos tentar fazer o oposto - converter um número de binário em decimal.

Convertendo um número do sistema binário em decimal.

Para fazer isso, precisamos numerar nosso número binário 111 do final, começando com zero. Para 111 é 1^2 1^1 1^0. Com base nisso, o número de um número servirá como seu grau. A seguir, realizamos ações de acordo com a fórmula: (x * 2 ^ y) + (x * 2 ^ y) + (x * 2 ^ y), onde x é o número ordinal do código binário e y é a potência deste número. Substituímos nosso número binário nesta fórmula e calculamos o resultado. Obtemos: (1 * 2 ^ 2) + (1 * 2 ^ 1) + (1 * 2 ^ 0) = 4 + 2 + 1 = 7.

Um pouco de história do sistema numérico binário.

É geralmente aceito que pela primeira vez sistema binário proposto por Gottfried Wilhelm Leibniz, que considerou o sistema útil em cálculos matemáticos complexos e em ciências. Mas, segundo alguns relatos, antes de sua proposta de um sistema numérico binário, apareceu na China uma inscrição na parede, que foi decifrada por usando código binário. A inscrição mostrava bastões longos e curtos. Supondo que o bastão longo seja 1 e o bastão curto seja 0, há uma chance de que na China a ideia de código binário já existisse muito antes de sua descoberta oficial. A decifração do código identificou ali apenas um simples número natural, mas este é um fato que permanece assim.

Conversor/codificador binário

Ferramenta para fazer conversões binárias. Código binário é um sistema numérico de base 2 usado em informática, os símbolos usados ​​na notação binária são geralmente zero e um (0 e 1).

Respostas às perguntas

Como converter um número em binário?

Converter um número para binário (com zeros e uns) consiste em uma operação da base 10 para a base 2 (natural código binário)

Exemplo: 5 (base 10) = 1*2^2+0*2^1+1*2^0 = 101 (base 2)

O método consiste em fazer divisões sucessivas por 2 e anotar o resto (0 ou 1) na ordem inversa.

Exemplo: 6/2 = 3 permanece 0, então 3/2 = 1 permanece 1, então 1/2 = 0 permanece 1. Os restos sucessivos são 0,1,1, então 6 é escrito 110 em binário.

Como converter um texto em binário?

Associe a cada letra do alfabeto um número, por exemplo usando o código ou o . Isto substituirá cada letra por um número que pode então ser convertido em binário (veja acima).

Exemplo: AZ é 65,90 () então 1000001.1011010 em binário

Da mesma forma, para tradução de binário para texto, converta o binário em um número e associe esse número a uma letra no código desejado.

Como traduzir binário

O binário não traduz diretamente, qualquer número codificado em binário continua sendo um número. Por outro lado, é comum na ciência da computação usar binário para armazenar texto, por exemplo, usando a tabela, que associa um número a uma letra. Um tradutor está disponível no dCode.

O que é um pouco?

Um bit (contração do dígito binário) é um símbolo na notação binária: 0 ou 1.

O que é complemento de 1?

Em informática, o complemento é escrever um número invertendo negativamente 0 e 1.

Exemplo: 0111 vira 1000, então 7 vira -7

O que é complemento de 2"?

Em informática, o complemento é escrever um número invertendo negativamente 0 e 1 e somando 1.

Exemplo: 0111 torna-se 1001

Faça uma nova pergunta

Código fonte

dCode retém a propriedade do código-fonte do script Binary Code online. Exceto licença explícita de código aberto (indicada Creative Commons/gratuita), qualquer algoritmo, applet, snippet, software (conversor, solucionador, criptografia/descriptografia, codificação/decodificação, cifragem/decifração, tradutor) ou qualquer função (converter, resolver, descriptografar , criptografar, decifrar, cifrar, decodificar, codificar, traduzir) escrito em qualquer linguagem informática (PHP, Java, C#, Python, Javascript, Matlab, etc.) cujos direitos dCode detém não serão liberados gratuitamente. Para baixar o script de código binário online para uso offline em PC, iPhone ou Android, solicite cotação de preço em



gastroguru 2017