MC404CD    -    2º Semestre 2009

Profs. Célio Guimarães e Nelson Machado - IC1 - sala 40

Atualizado em: 21/09/09

Atividade opcional: Produto escalar de dois vetores de inteiros de 8 bits sem sinal

Escreva um programa em linguagem de montagem do AVR que calcula o produto escalar de dois vetores de inteiros de 8 bits sem sinal, localizados na memória de programa. Cada vetor é delimitado pelo valor ff que não faz parte do vetor. Você deve copiar para a memória RAM apenas o 1º vetor a fim de facilitar o cálculo. O produto escalar deve ser calculado com precisão de 16 bits e no final do cálculo deve ser armazenado em dois bytes da memória RAM no formato little endian (byte menos signif, byte mais signif). Faça um teste com dois vetores de 4 elementos cada com dígitos qaisquer desde que o resultado do produto escalar seja maior do que ff e verifique a correção com a calculadora do Windows.
Exemplo de declaração dos vetores:
Vetor1:   db 0x74, 0x55, 0x32,0x68, 0xff
Vetor2:   db 0x50, 0x46, 0x88,0x70, 0xff
e o resultado do produto escalar é: 0x838e