O Objetivo desta atividade é o desenvolvimento de um ambiente integrado para desenvolvimento de software em arquiteturas de processador customizáveis, voltado para o ensino de programação em baixo nível na disciplina de Organização e Arquitetura de Computadores para os cursos de Engenharia de Computação e Bacharelado em Ciência da Computação, Sistemas de Informação e Ciências de Dados do ICMC-USP. O ambiente será construído de forma didática, oferecendo uma interface web que integra todas as ferramentas. A motivação para a criação do projeto foi a falta de ferramentas modernas e didáticas para essa área de ensino e as dificuldades notadas pelos alunos de trabalhar em um ambiente pouco intuitivo e com ferramentas oferecidas separadamente.
Os principais componentes do ambiente que serão desenvolvidos são o emulador, que emula a arquitetura do processador, e o montador, que converte o código assembly em código binário executável. Esses módulos serão desenvolvidos de maneira independente, permitindo seu uso em outros contextos, e serão integrados à interface web por meio de WebAssembly e Web Workers, que melhoram o desempenho do software. Assim, a ferramenta poderá ser utilizada em qualquer navegador sem a necessidade de instalação.
Esta atividade será desenvolvida pelos alunos em um período de seis meses, totalizando 240 horas (10 horas por semana). O docente restponsável irá dedicar 2h horas por semana para tutoriar a atividade, perfazendo 48h.