Pergunta

Qual seria o código de montagem para 68HC11 para calcular o valor do seno usando a série Taylor ou uma tabela de pesquisa?

O valor de exibição será apenas no número inteiro. Como uma tabela de pesquisa funcionaria neste caso? Como isso pode ser implementado usando Série Taylor?

Foi útil?

Solução

Eu não fiz nada 68HC11 Programação em muito tempo, então não poderei fornecer instruções exatas, mas você quer fazer mais ou menos o seguinte:

  1. Defina uma tabela na memória que possui 256 (ou muitos) valores para sin (x), em um quadrante, na faixa [0-pi/2].
  2. Converta sua entrada para o intervalo [0-Pi/2], acompanhando qual quadrante estava originalmente. Para o Q2, você deseja o valor (PI/2-X), por exemplo.
  3. Procure o valor ajustado na tabela, negando o resultado se o ângulo original estivesse nos 3º ou 4º quadrantes.

Obviamente, os detalhes dependeriam das faixas de entrada e saída, mas, de um modo geral, você usará o modo de endereço indexado, com o registro do índice apontando para a tabela ou, alternativamente, endereçamento estendido, com o deslocamento definido modificando o código OPC.

Outras dicas

Se você estiver procurando por uma solução de ponto flutuante, precisará implementar as operações de ponto flutuante primeiro. Essa parte será não trivial em um 68HC11 que não tem suporte para operações de 32 bits. Depois disso, calcular o pecado é fácil, mas muito lento. ;-)

Use uma tabela de pesquisa.

Não use a série Taylor.

Google encontrado isto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top