Desenvolvedor & estudante contínuo
Olá, eu sou o Vítor Silvério.
Aqui compartilho meus projetos, meu currículo e — principalmente — artigos sobre as coisas que estudo e gosto de explorar, muitos escritos com ajuda de IA.
Últimos artigos
Ver todos →Montando e ligando um executável ARM
Entre o .s e o programa que roda há dois passos: montar (as) transforma texto em código-objeto com endereços relativos; ligar (ld) atribui os endereços finais, junta as seções e escolhe o ponto de entrada. Este artigo abre os dois, com um *linker script* de verdade e o objcopy que extrai os bytes crus.
Primeiro programa em assembly ARM
Duas funções escritas do zero em assembly ARM — fibonacci iterativo e o máximo de dois números — montadas, ligadas e rodadas no arm-box, com o resultado provado pelo *exit code*. O max sai em três instruções, sem um único desvio.
Como o decoder do arm-jitter funciona
Decodificar à mão é o começo. O arm-jitter faz o mesmo em Java, mas não para na DecodedInstruction: ele eleva blocos inteiros para uma representação intermediária imutável e roda um otimizador em cima. Este artigo segue os bytes de 0xe0810002 até virarem IrOp — e mostra o otimizador apagando código morto.
Vamos conversar
Aberto a trocar ideia sobre ARM, emulação, Angular e oportunidades. Me acha no LinkedIn ou dá uma olhada no meu currículo.