реклама на сайте
подробности

 
 
> Аппаратное умножение 24-битных чисел?, Дайте пример на асме.
alux
сообщение Aug 31 2005, 10:40
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Хочу оптимизировать программу умножения 3-байтных чисел . За основу взял AVR200. Когда перешел с 2313 на мегу48 естественно возник вопрос как использовать mul для умножения 24-битных чисел с получением 48-битного результата?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alux
сообщение Aug 31 2005, 14:33
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Попробовал. Вот что получилось:
ah:am:al * bh:bm:bl = c5:c4:c3:c2:c1:c0

_____________________________________

mul al,bl
movw c1:c0,r1:r0

mul am,bl
add c1,r0
adc c2,r1

mul ah,bl
add c2,r0
adc c3,r1

mul al,bm
add c1,r0
adc c2,r1

mul am,bm
add c2,r0
adc c3,r1

mul ah,bm
add c3,r0
adc c4,r1

mul al,bh
add c2,r0
adc c3,r1

mul am,bh
add c3,r0
adc c4,r1

mul ah,bh
add c4,r0
adc c5,r1
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th September 2025 - 19:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.03352 секунд с 7
ELECTRONIX ©2004-2016