SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

Participe do fórum, é rápido e fácil

SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 12 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Chegou o novo tema 6.5.5 - SSGamers - Servidores online de qualidade - Aproveite e entre para nossa comunidade, inscreva-se já! - Ouça nossa web radio - Veja nossas novidades - Participe dos nossos setores de jogos online - Parcerias aberta fale já com um administrador.

    [Tutorial] Conversão Hexadecimal

    Weslley_Script
    Weslley_Script
    SS - Fundador
    SS - Fundador


    Steam Steam : WeslleySSGames
    Zello : WeslleySSGames
    Mensagens : 11381
    Moedas : 1031991
    Data de inscrição : 06/10/2011
    Idade : 28
    Localização : Brasil

    [Tutorial] Conversão Hexadecimal Empty [Tutorial] Conversão Hexadecimal

    Mensagem por Weslley_Script Qua 5 Abr 2023 - 12:09

    Conversão de códigos hexadecimais

    Com o objetivo de ampliar o conhecimento da placa sobre o modo de "pensar" do computador, resolvi criar este tutorial.
    Bom depois de estudar sobre resolver criar este tutorial por ter em vista que a comunidade de scripters do sa-mp é de uma grande maioria novatos e que como eu não tinha a menor ideia de como a arquitetura binária funcionava e como o computador "pensava", e tendo em vista também que todo programador deve conhecer como o seu código é processado pelo computador, sendo essa a base de nosso trabalho.
    Sem mais delongas vamos iniciar o tutorial.
    O que são códigos hexadecimais?

    Para explicar isso do começo vamos primeiro pensar no que vem antes do hexadecimal, o binário.

    O código binário é um sistema de base 2 por usar apenas dois caracteres em seu processamento (0 e 1).

    Já o código Hexadecimal é um sistema de caracteres em base 16 (pode ser representado por 16 caracteres) e é representado pelo segundo conjunto:

    S = {0,1,2,3,4,5,6,7,8,9, A,B,C,D,E,F}

    Logo o sistema hexadecimal nada mais é que um sistema criado para diminuir a escrita de números grandes (como 165 que em hexadecimal pode ser representado por A5) não sendo necessário representá-lo de modo binario que fica muito mais complexo (0000 0000 1010 0101).
    Mais a frente vamos aprender a conversão de Hexadecimal para Decimais e tudo ficará mais claro.

    RGB ou as famosas Red - Green - Blue

    Vamos comeзar do bбsico. Você já deve ter ouvido falar das famosas cores primárias (as famosas Vermelho, Azul e Amarelo), bem o problema й que o nosso monitor, seja do computador, televisão, câmeras digitais, todos usam as cores Vermelho, Verde e Azul.

    A partir da mistura dessas cores é possível ter-se todas as outras cores do mesmo jeito em que Vermelho, Amarelo e Azul.

    [Tutorial] Conversão Hexadecimal 420px-synthese2b.svgnjkmn

    Mas e o que os cуdigos hexadecimais tem a ver com isso? Simples, o código RGB é representado por decimais que tem sua cadeia de base 10 já o hexadecimal é representado por uma cadeia de base 16 sendo possível representar de mais formas os números decimais, assim como a forma de escrever o código RGB.
    Exemplo:

    (0,139,139)

    Os números citados acima representam respectivamente a quantidade de cor Vermelha (0), Verde (139) e Azul (139) que serão misturados para a obtenção de uma determinada cor.
    Jб o cуdigo hexadecimal desses nъmeros й #008B8B .
    É muito mais fácil escrever "#008B8B" do que "0, 139, 139". Sendo assim esse ъnico cуdigo estб representando 3 nъmeros.

    É importante saber também que o nъmero mбximo no cуdigo RGB serб 255.



    Convertendo um código hexadecimal em RGB

    O processo de conversão de códigos hexadecimais não é complexo quando é entendido de modo concretizado.

    Exemplo do cуdigo de uma cor hexadecimal: #4B0082
    Este й o cуdigo responsбvel pela cor "Indigo" (nгo me pergunte de onde vem o nome por favor).

    Mas Mandrack, qual o sentido disso??
    Bem, eu criei uma metodologia em passos para a conversão do código hexadecimal e que vai esclarecer sua dúvida.

    Primeiro passo:
    Exclua o "#" do cуdigo, ele nada mais é do que um indicador hexadecimal. Nгo farб diferenзa para nуs neste momento.
    Nosso código ficará assim: 4B0082

    Segundo passo:
    Separe o código em 3 partes de 2 caracteres cada.
    Exemplo: 4B 00 82

    Agora ficou fácil certo? Usando uma lógica, participe ver o que cada uma dessas 3 divisões representa, logo elas representam respectivamente os cores Vermelho (Vermelho), Verde (Verde) e Azul (Azul).

    Mas Mandrack como assim?
    Vou explicar os outros passos e tudo vai se encaixar.

    Terceiro passo:
    Procurar as letras existentes em cada uma das divisões de 2 caracteres.
    Using our cуdigo, logo temos uma única letra, o B
    B 00 82

    Agora preste atenção, nos cуdigos hexadecimais existem 6 letras que podem estar presentes, sendo elas A, B, C, D, E e F. Cada letra representa respectivamente um número sendo A = 10, B = 11, C = 12, D = 13, E = 14, F = 15. Para organizar melhor isso vou separar aqui em baixo.

    A = 10
    B = 11
    C = 12
    D = 13
    E = 14
    F = 15


    Quarto passo:
    Logo após identificar as letras, vamos realizar uma conta processada pelo computador ao passar cada cуdigo para RGB. Bom a conta é feita da seguinte maneira:

    (O primeiro caractere * 16) + O segundo caractere

    Veja no nosso exemplo abaixo:

    B -> ( 4 * 16) + 11 = 75 (Red)

    0 -> ( 0 * 16 ) + 0 = 0 (Verde)

    8 -> ( 4 * 16) + 8 = 130 (Azul)

    Lembrando que o "B" vale 11, por isso utilizamos o valor 11.

    Sendo assim temos o nosso cуdigo hexadecimal traduzido para o RGB.
    Sabendo disso podemos deduzir o porquê do número maior encontrado na representação RGB й o 255 pois temos a seguinte representação:
    #FFFFFF (código da cor branca)
    logo:
    F -> ( 15 * 16) + 15 = 255 (Red)

    F -> ( 15 * 16) + 15 = 255 (Green)

    F -> ( 15 * 16) + 15 = 255 (Blue)

    Como nуs podemos ler o cуdigo RGB de modo simples?

    Sabendo que o número máximo encontrado na cor RGB é o 255 podemos ler-lo utilizando a porcentagem (seria a mesma coisa que o computador faz mas ele é complicado).
    Logo temos a cor #ADD8E6 (Azul Claro), vamos a conversa.
    D -> ( 10 * 16) + 13 = 173 (Vermelho)

    8 -> ( 13 * 16) + 8 = 216 (Verde)

    6 -> ( 14 * 16) + 6 = 230 (Azul)

    Agora faremos a famosa regra de trÊs aprendida no ensino fundamental:

    Cor Red :registered:
    100 sera 255
    x sera 173
    x = (100*173)/255
    x = 67% vermelho (aproximadamente)

    Agora a cor Verde (G)
    100 sera 255
    x sera 216
    x = (100*216)/255
    x = 84% verde (aproximadamente)

    E finalmente a cor Azul (B)
    100 sera 255
    x sera 230
    x = (100*230 )/255
    x = 90% azul (aproximadamente)

    Mas o código hexadecimal serve para núcleos?

    NÉO!!! O cуdigo hexadecimal nгo й usado apenas em cores, ele poderia ser um texto tambйm, por exemplo
    4F6C6120706573736F616C
    que representa o texto "Ola pessoal".

    Como converter ou hexadecimal em textos?

    Utilizamos a mesma lógica, da muito trabalho, porém a única coisa que muda é que os números finais da conversão nã o representam mais uma porcentagem de uma cor, mas sim um número que será comparado com a tabela ASCII que terá seu código em decimal e transformado em texto.
    Por exemplo vamos pegar os 8 primeiros caracteres do nosso texto hexadecimal (4F6C6120)
    logo teremos:

    F -> ( 4 * 16) + 15 = 79 (O decimal 79 na tabela ASCII representa o caractere "O")

    C -> ( 6 * 16) + 12 = 108 (O decimal 108 na tabela ASCII representa o caractere "l")

    1 -> ( 6 * 16) + 1= 97 (O decimal 97 na tabela ASCII representa o caractere "a")

    0 -> ( 2 * 16) + 0 = 32 (O decimal 32 na tabela ASCII representa o caractere " " ou "espaço/espaço")

    Simples nгo é? Deixarei aqui o link de uma tabela ASCII que encontrei na internet para seus estudos Tem também o link que o Bruno13 indicou da tabela ASCII da Wikipedia que está mais completa, segue o link https://pt.wikipedia.org/wiki/ASCII Sendo assim que chegamos ao final do tutorial, posso incrementar mais coisas caso para preciso e se voces tiveram dъvidas estarão a disposiзгo para ajuda-los.

    [Tutorial] Conversão Hexadecimal Abaaafv5saa-0ryktt







    OBS: Pretendo melhorar o visual desse tutorial para deixa-lo mais intuitivo e de melhor compreensгo, nгo o farei agora pois sгo exatamente 00:34 e estou cansado.

    Novamente uma boa noite e aproveitem o conteúdo.

    Bфnus

    Criei um programa em Java que converte cуdigos hexadecimais em RGB, eu admito que ele estб um tanto quanto precбrio, nгo ia disponibilizá-lo e foi um programa que criei enquanto estudava a linguagem. Irei deixa-lo como um bфnus para auxiliar nos seus estudos.
    PASTEBIN

    Créditos

    Mandrack_FreeZe e todos os sites de onde tirei as imagens (****** e Wikipedia)



    [Tutorial] Conversão Hexadecimal D07Xwqb
    [Tutorial] Conversão Hexadecimal Yjab9HN

      Data/hora atual: Sex 17 maio 2024 - 19:44