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

 
 
> Умножение
Ich
сообщение Dec 12 2006, 01:05
Сообщение #1





Группа: Новичок
Сообщений: 8
Регистрация: 12-05-05
Пользователь №: 4 962



Подскажите пожалуйста как правильно на асемблере умножить регистровую пару на константу, поиском ничего доступного не нашел (может и плохо искал). Заранее спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ValeraK
сообщение Dec 12 2006, 11:07
Сообщение #2


Частый гость
**

Группа: Новичок
Сообщений: 164
Регистрация: 11-01-05
Из: Россия, Снежинск
Пользователь №: 1 900



Цитата(Ich @ Dec 12 2006, 03:05) *
Подскажите пожалуйста как правильно на асемблере умножить регистровую пару на константу


При умножении 16 на 16 результат 32, делаю так:

clr Temp1000
clr Temp0100
ldi Cnt,16 ;bit counter
M16x16: lsr MnozhimoeH
ror MnozhimoeL
brcc NoAdd
add Temp0100,MnozhitelL
adc Temp1000,MnozhitelH
NoAdd: ror Temp1000 ;Result >>
ror Temp0100
ror Temp0010
ror Temp0001
dec Cnt
brne M16x16

Результат будет в четырёх регистрах Temp*
Go to the top of the page
 
+Quote Post



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

 


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


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