Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 26.04.2012, 10:19  
SasaVitebsk
Гражданин KAZUS.RU
 
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
SasaVitebsk на пути к лучшему
По умолчанию Re: Умножение 16x16 c 32-х битным результатом для AVR

Уважаемый hubble. Вместо того, чтобы 2 дня потратить на запросы по форуму и ковыряния в коде, может проще потратить 10-15 минут на изучение мануала по компилятору?
Смысл ведь действий прост - вам надо найти раздел что-нибудь типа mixing ASM & C. И узнать как передаются переменные в п/п и из неё. Например для IAR компилятора а находилось бы в R17:R16, а b в R19:R18. Результат необходимо было бы поместить в R19:R16. При этом нельзя портить регистры определённые.
Судя по посту OneTech, в CV переменные передаются на стеке данных. Указатель стека в регистровой паре Y. Он портит регистры R16-R19 и R31:R30 (что для IAR, к примеру, недопустимо)
===
Далее по теме топика. Ну для деления - эт ладно... Но а уж по умножению ну смешно же ведь даже... Ребята вы что столбиком не умножали? Ну неужели так сложно?
AB
*
CD
=
D*B
+
D*A ‹‹8
+
C*B ‹‹8
+
C*A ‹‹16
--
Имея аппаратное умножение - это что проблема? Поясните?
В конце концов ну не высшая же математика ... Ну хоть немного голову напрягайте ... Совсем же апрофируется данный орган.
Реклама:
SasaVitebsk вне форума  
Непрочитано 26.04.2012, 10:55  
hubble
Прописка
 
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
hubble на пути к лучшему
По умолчанию Re: Умножение 16x16 c 32-х битным результатом для AVR

Спасибо.
Разобрался.
hubble вне форума  
Непрочитано 06.06.2016, 00:39  
grigoryev
Прохожий
 
Регистрация: 30.10.2007
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
grigoryev на пути к лучшему
По умолчанию Re: Умножение 16x16 c 32-х битным результатом для AVR

long int pressraw=0;
unsigned char twirx_buffer[80];

pressraw = (long int)twirx_buffer[2] ‹‹16 | (long int)twirx_buffer[1] ‹‹8 | twirx_buffer[0];
grigoryev вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
FAQ (ЧаВО) по PROTEUS для начинающих и не только dosikus Proteus 221 07.03.2024 22:45
LPT программатор для AVR. Выбор skywriter_ufa Микроконтроллеры, АЦП, память и т.д 24 27.10.2010 02:26
Flowcode для AVR vik3213 Микроконтроллеры, АЦП, память и т.д 13 17.07.2010 20:42
Сравнение средств разработки для микроконтроллеров AVR и PIC silic Микроконтроллеры, АЦП, память и т.д 24 04.12.2009 07:36
переносной ISP загрузчик для AVR Ugauga Микроконтроллеры, АЦП, память и т.д 8 07.11.2009 20:47


Часовой пояс GMT +4, время: 18:31.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot