Leandro de Jesus Ribeiro Posted July 15, 2019 at 04:21 AM Share Posted July 15, 2019 at 04:21 AM Olá. Como faço para ler ou transformar hexadecimal em Linguagem C? PIC16F685 Quote Link to comment Share on other sites More sharing options...
Leandro Fróes Posted July 17, 2019 at 08:13 PM Share Posted July 17, 2019 at 08:13 PM Opa, você diz interpretar um valor em hexa utilzando a linguagem C? Ou literalmente pegar um arquivo binário e tentar transformar em C? Quote Link to comment Share on other sites More sharing options...
bsantos Posted January 2, 2021 at 02:23 AM Share Posted January 2, 2021 at 02:23 AM Leandro. Se eu nao estiver entendendo errado, o PIC16f685 eh um microcontrolador (microprocessador com perifericos embarcados) e esta querendo portar seu codigo escrito em asm (que eu usei muito para programar os 16f84) para codigos em C. Eh isso? Quote Link to comment Share on other sites More sharing options...
Fernando Mercês Posted January 8, 2021 at 04:08 PM Share Posted January 8, 2021 at 04:08 PM Acho que é quase isso @bsantos. Acho que ele tem um programa compilado para PIC, que é um binário e uma galera se refere como "o hexadecimal" por não ser mais legível, etc (dá pra abrir num editor hexa, claro) e aí ele quer descompilar para C de volta. Eu nunca fiz, mas deve dar sim. Talvez com o IDA ou Ghidra? Acho que vale tentar. Abraços! Quote Link to comment Share on other sites More sharing options...
bsantos Posted January 12, 2021 at 03:16 PM Share Posted January 12, 2021 at 03:16 PM Então @Fernando Mercês nesse caso, tem que se ver e espero que os @Leandro de Jesus Ribeiro não se decepcione caso não consiga fazer a eng reversa mesmo lendo do hex. Isso porque o MpLab (compilador ASM ou C para o microchip) tem opção de encriptação para a proteção de propriedade intelectual do firmware embutido. Quote Link to comment Share on other sites More sharing options...
Fernando Mercês Posted January 12, 2021 at 03:29 PM Share Posted January 12, 2021 at 03:29 PM Aaaaah, isso muda tudo. Valeu pela info! Quote Link to comment Share on other sites More sharing options...
Supporter - Nibble anderson_leite Posted February 21, 2021 at 05:19 AM Supporter - Nibble Share Posted February 21, 2021 at 05:19 AM O post é antigo mas ainda posso contribuir com algo, passei por algo parecido em um Arduino, apenas com o hex ainda é possivel transformar o hex em texto para bytes puros. Esse formato hex na real é um formato criado pela intel, Intel HEX, e é possivel reconstruir ele sabendo como a placa realiza seu formato, para isso é preciso dar uma pesquisada nesse PIC, um exemplo da wikipedia: :10010000214601360121470136007EFE09D2190140 Start code Byte count Address Record type Data Checksum Sabendo disso, a gente pode pegar os dados 214601360121470136007EFE09D21901 e transformar em bytes mesmos, daí fica facil abrir em qualquer tool para disassembly ou algo do tipo. Sobre aquele meu problema do arduino, eu acabei criando uma tool extremamente simples para fazer essa conversão de hex para arquivo cru https://github.com/AandersonL/hex2raw, é um projeto antigo e de certa forma abandonado, mas la eu fiz um esquema com uma YAML para expandir para outras placas, então caso o @Leandro de Jesus Ribeiro se interesse é possivel portar esse PIC e fazer alguns testes. ? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.