Atividade 5:   Macro para gerar uma tabela contendo fatoriais

 

 
 

O objetivo desta atividade é exercitar a utilização de Macros com o montador Nasm.

Escreva um programa contendo uma Macro chamada fatorial com dois parâmetros. Ao ser invocada a macro deve gerar uma tabela com um rótulo denominado fatoriais na área de dados do programa, contendo em cada entrada da tabela as diretivas:
db i
dw j
onde j é o valor do fatorial de i.
O primeiro parâmetro da macro é o valor de i a partir do qual a tabela deve ser gerada e o segundo parâmetro é o valor de i para o último elemento da tabela. Os fatoriais gerados devem estar limitados a 16 bits e sua macro  deve cuidar disto.
Ao ser executado o seu programa deve enviar uma mensagem ao vídeo contendo o número de entradas da tabela gerada.
Por exemplo, a invocação fatorial 3, 10 deve gerar:
db     3
dw    6
db    4
dw    24
.
.
db     8
dw    valor de 8!

Sugestão: utilize a técnica usada na macro para gerar diretivas contendo a   sequencia de Fibonacci  vista em aula.

Opcional: gere a tabela de fatoriais com precisão de 32 bits. Nesse caso a diretiva dw j deve ser substituída por dd j.
V. deve também  lembrar que variáveis inteiras definidas dentro de uma macro são internamente números inteiros de 32 bits com sinal.

V. deve submeter:  uma impressão do programa no formato .lst (landscape) e fazer uma demonstração no laboratório.

Data de submissão: 08/05/02         Prazo de Entrega: 22/05/02.