Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
06.12.2005, 02:54
|
#1
|
Прохожий
Регистрация: 06.12.2005
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
8051: Деление двойной точности, ассемблер
Уважаемые комрадос.
Есть вот такой неприятный трабл.
Надо организовать на процессоре в сабже целочисленное деление, используя его команду DIV A,B; однако, команда эта работает только с 8-ми разряднами числами. У меня появилась необходимость расширить разрядность чисел до 16 бит.
Нужен эффективный алгоритм (в ассемблерных мнемониках) для деления 16-разрядных чисел с использованием команды DIV.
Как такое сделать?
Помогите, PLZ!
|
|
|
|
06.12.2005, 03:28
|
#2
|
Прописка
Регистрация: 03.05.2005
Адрес: Москва
Сообщений: 289
Сказал спасибо: 1
Сказали Спасибо 25 раз(а) в 23 сообщении(ях)
|
8051
Hу а чего тут думать то. Возьмите любой компилятор С
напишите программу деления двух чисел с двойной точностью
оттранслируйте, затем запустите дизассемблер, и достаньте
подрограмму. Заодно поинтересуйтесь как передаються
параметры вызываемой программы.
|
|
|
|
06.12.2005, 04:45
|
#3
|
Прохожий
Регистрация: 06.12.2005
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Нету под рукой сейчас компилятора с дизассемблером, особенно под 8051. Хотелось бы особо не заморачиваться и решить вопрос по-быстрее. Помогите комрадос...
|
|
|
|
06.12.2005, 13:40
|
#4
|
Гость
|
Re: 8051: Деление двойной точности, ассемблер
Надо организовать на процессоре в сабже целочисленное деление, используя его команду DIV A,B; однако, команда эта работает только с 8-ми разряднами числами. У меня появилась необходимость расширить разрядность чисел до 16 бит.
Нужен эффективный алгоритм (в ассемблерных мнемониках) для деления 16-разрядных чисел с использованием команды DIV.
Как такое сделать?
Дональд Э. Кнут. Искусство программирования, т2. раздел Целочисленные алгоритмы Очень много полезного.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:54.
|
|