quinta-feira, 21 de outubro de 2021

Subprogramas em C e Assembly

A seguir, dois programas serão disponibilizados para análise. O primeiro implementa em C++ um algoritmo que decompõe um número inteiro em seus dígitos formadores. Este programa ainda conta com um apêndice, que implementa o mesmo algoritmo na linguagem Assembly.

O segundo programa implementa o mesmo algoritmo do primeiro, mas organiza seus códigos fontes em dois subprogramas, um para decompor o número e outro para exibir as suas parcelas.

Observa-se no algoritmo implementado, que este usa do processo de múltiplas divisões por 10 para, em cada iteração: i) calcular o resto da divisão; ii) armazenar o resto em uma estrutura de dados (string em C++ e pilha em Assembly) e; ii) retirar esta parcela do número original. Após serem armazenadas, cada uma das parcelas serão exibidas na ordem inversa a que foram inseridas na estrutura de dados.

Como objeto de aprendizagem, cada um dos programas é composto por sua implementação em C++ e a respectiva adaptação para Assembly (8 Bit Assembler Simulator). De modo a melhorar a compreensão por parte dos iniciantes na programação em Assembly, o código relacionado ao processo de decomposição, está fortemente documentado.

Nenhum comentário:

Postar um comentário