Skip to content

JhoanDev/AssemblyJourney

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📘 Aprendizado Progressivo de Assembly x86

Este repositório documenta minha jornada de aprendizado na linguagem Assembly com foco na arquitetura x86, utilizando o NASM no sistema operacional Linux (Ubuntu). A integração com C++ também é explorada para ampliar a aplicabilidade dos conceitos estudados.


🎯 Objetivo

O objetivo principal é consolidar e compartilhar o conhecimento adquirido ao longo dos estudos em Assembly, através de anotações, exemplos práticos e projetos aplicados. Este repositório serve tanto como material de referência pessoal quanto como fonte de aprendizado para outros interessados na linguagem de baixo nível.


📚 Conteúdo

  • 📒 Notas de Estudo
    Anotações organizadas sobre os principais conceitos da linguagem, como registradores, sintaxe NASM, manipulação de arquivos, integração com C++, entre outros.

  • 💻 Códigos de Exemplo
    Programas simples e intermediários desenvolvidos em Assembly, com foco no uso de instruções específicas, leitura/escrita de dados, chamadas de sistema, lógica de decisão, entre outros tópicos.

  • 🧠 Projetos Práticos
    Pequenos projetos que combinam os conhecimentos adquiridos e demonstram o uso de Assembly em problemas reais ou simulados, frequentemente integrando com código em C++.


📁 Estrutura do Repositório

.
├── .gitignore
├── LICENSE
├── README.md
└── assembly
    ├── notas/                      # Documentação e anotações teóricas
    │   ├── introducao.md
    │   ├── registradores.md
    │   ├── sintaxe.md
    │   ├── arquivos.md
    │   ├── compilar_executar.md
    │   ├── makefile.md
    │   └── integrar_com_outra_linguagem.md
    │
    ├── codigos/                    # Exemplos práticos e exercícios
    │   ├── hello.asm
    │   ├── soma.asm
    │   ├── maiorNum.asm
    │   ├── entrada.asm
    │   ├── parOuImpar.asm
    │   ├── saoIguais.asm
    │   ├── lea.asm
    │   ├── menu.asm
    │   ├── converte.asm
    │   ├── converteValorDigitado.asm
    │   ├── testaBiblioteca.asm
    │   ├── piramide.asm
    │   ├── quadrado.asm
    │   ├── xadrez.asm
    │   ├── bibliotecas/            # Includes auxiliares (modularização)
    │   │   ├── arquivos.inc
    │   │   ├── bibliotecaE.inc
    │   │   ├── j7.inc
    │   │   ├── menu.inc
    │   │   ├── piramide.inc
    │   │   ├── quadrado.inc
    │   │   └── xadrez.inc
    │   ├── decisao/
    │   ├── escreverArquivo/
    │   ├── lerArquivo/
    │   ├── fib/
    │   ├── parametros/
    │   ├── questao/
    │   └── troca/
    │
    └── projetos_praticos/          # Projetos completos em Assembly + C++
        ├── calculadora/
        ├── fatorial/
        ├── pascal/
        └── primo/

🚀 Como Executar

Todos os códigos foram desenvolvidos e testados em ambiente Linux ubuntu.

Alguns diretórios possuem arquivos makefile para facilitar a compilação.


📄 Licença

Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.


🤝 Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para:

  • Abrir uma issue com dúvidas ou sugestões
  • Criar um pull request com melhorias, correções ou novos conteúdos

📬 Contato

Para sugestões, dúvidas ou colaborações, utilize as issues deste repositório.

About

Minha jornada na linguagem de baixo nível Assembly

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published