Division 21065L Assembler

Started by John Henry March 30, 2005


I have a rather embarrassing question.
I have been able to do division easily using the divq method in
assembler in previous DSPs, but I can't figure out how to do it in the
21065L assembler.
So far, I have been able to compute by hand the 1/n for a number, then
do a multiply in 21065l, but now I have numbers that change, meaning
variables instead of constants that I need to do division with.
So, if I have in DM variable a, that I need to divide by DM variable
b, can someone send me either the syntax to do this, or a quick
routine (in assembler, not C, C is easy)?
Sorry, I have figured out a lot, but this one eludes me at the moment.

Thanks,
John Henry
Sevierville, TN



On Wed, 30 Mar 2005, John Henry wrote:

> I have a rather embarrassing question.
> I have been able to do division easily using the divq method in
> assembler in previous DSPs, but I can't figure out how to do it in the
> 21065L assembler.
> So far, I have been able to compute by hand the 1/n for a number, then
> do a multiply in 21065l, but now I have numbers that change, meaning
> variables instead of constants that I need to do division with.
> So, if I have in DM variable a, that I need to divide by DM variable
> b, can someone send me either the syntax to do this, or a quick
> routine (in assembler, not C, C is easy)?
> Sorry, I have figured out a lot, but this one eludes me at the moment.

Look in the manual for Fn = RECIPS Fx. They have a routine for doing
inversion. It works fine, I use it a lot :-)

Patience, persistence, truth,
Dr. mike




John Henry wrote:
> I have a rather embarrassing question.
> I have been able to do division easily using the divq method in
> assembler in previous DSPs, but I can't figure out how to do it in the
> 21065L assembler.
> So far, I have been able to compute by hand the 1/n for a number, then
> do a multiply in 21065l, but now I have numbers that change, meaning
> variables instead of constants that I need to do division with.
> So, if I have in DM variable a, that I need to divide by DM variable
> b, can someone send me either the syntax to do this, or a quick
> routine (in assembler, not C, C is easy)?
> Sorry, I have figured out a lot, but this one eludes me at the moment.

John, you might want to have a look here:

http://www.analog.com/processors/resources/technicalLibrary/codeExamples
.html

then select

ADSP-21xxx Applications Handbook File Area

where you will find maths, filter, graphics, etc. routines for the
SHARC processors.

Regards,
Andor