Как-то странно смотрится все это извращение (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Pol-SDG 02 июня 2003 г. 11:15
В ответ на: Люди,помогите по С,только учусь. отправлено gram 01 июня 2003 г. 17:21

Начиная с 386 проца операция mul (умножение дает 64 разрядный результат edx:eax) Там же ищет делимое операция деления div ( которая кстати возвращает остаток в edx ). Поэтому в нормальных языках поддерживается операция */ (umd)

В сях можно объявить макрос:

// res a*b/c
#define umd( res, a, b, c) \
asm{ \
mov eax, a ; \
mov edx, b ; \
mov ebx, c ; \
mul edx ; \
div ebx ; \
mov dword [res], eax ; \
}


Примерно так, в кривуще-косущем BC55 отладить не удалось.
(Ну и гадость эта ваша заливная рыба...)

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru