Skip to content

Latest commit

 

History

72 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

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

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages