-
Notifications
You must be signed in to change notification settings - Fork 1
Bases numéricas
Caso goste de assistir vídeos tutorias, clique aqui para assistir um vídeo sobre as bases numéricas.

Na imagem acima, existem algumas áreas demarcadas com um retângulo vermelho e um número. Explicando cada área enumerada, temos:
1 - Na região do retângulo número 1, você pode selecionar o tipo de base numérica que você que aplicar para encriptar ou traduzir sua mensagem.
2 - Digite a sua mensagem na região do 2° retângulo. Caso esteja no modo encriptação, digite a mensagem que você deseja encriptar, e caso esteja no modo tradução, digite uma mensagem encriptada por uma das bases numéricas e clique em "traduzir".
3 - Ao clicar no botão "encriptar", a mensagem encriptada aparecerá nessa região. Caso esteja no modo de tradução, ao clicar no botão "traduzir", a mensagem traduzida aparecerá nessa mesma área. OBS: Na tradução, caso tenha algum erro na mensagem, como um caractere inválido para a base numérica, será mostrado uma mensagem de erro.
Para explicar melhor o funcionamento dessa opção de cifra, a explicação será dividida em 2 tópicos: "Encriptação" e "Tradução". Esses tópicos serão explicados logo abaixo:
Para encriptar uma mensagem com essa opção de cifra, o programa coletará o valor unicode de cada caractere da mensagem (na base decimal) e converterá esse número para a base numérica escolhida (exceto para o decimal, que já vem convertido).
Exemplos:
Binário: A = 65(na tabela unicode) = 1000001 | AB = 65 66 = 1000001 1000010
Octal: A = 65 = 101 | AB = 65 66 = 101 102
Decimal: A = 65 | AB = 65 66
Hexadecimal: A = 65 = 41 | AB = 65 66 = 41 42
Para traduzir uma mensagem encriptada por essa cifra, é necessário converter cada valor para a base decimal(unicode), e depois converter para o caractere referente ao valor unicode.
Exemplos:
Binário: 1000001 = 65 = A | 1000001 1000010 = 65 66 = AB
Octal: 101 = 65 = A | 101 102 = 65 66 = AB
Decimal: 65 = A | 65 66 = AB
Hexadecimal: 41 = 65 = A | 41 42 = 65 66 = AB
OBS: Mensagens de erros: caso você digite um digito inválido para a base numérica (EX: digitar o número: 1101(2)1 para binário, (8)212 para octal e A45(G) para hexadecimal aparecerá uma mensagem de erro. Caso você digite um valor muito elevado, isso também pode levar a ocorrência de um erro.
Caso não tenha muito conhecimento sobre as bases numéricas e deseja conhecer mais, existe um mini curso do canal Curso Em Vídeo que é muito bom para aprender esse conteúdo. Caso não saiba oque é o unicode, clique aqui. Caso queira ver como foi implementado o código em Python, clique aqui