Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:23 27.06.24 
Клубове/ Компютри и Интернет / Програмисти Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Отг: Битовете, битовете! [re: svetlin]
АвторOldAss_anon_anon (Нерегистриран) 
Публикувано20.12.00 09:10  



Не ти трябва нито изваждане, нито деление,
да не говорим за дебъгери и компилатори.
Стига ти събиране с пренос, шифт и двоична
аритметика с фиксирана запетая.

Делението на 900 го представяш като умножение
по 1/900 = 0.001(1).
А числото 0.001(1) можеш да представиш като
умножение по 73 и деление на 65536 например.
Иначе казано, (2000+х) * х * 73 / 655636
Понеже говорим за целочислен резултат,
деленето на 65536 означава просто да махнем
младшите 2 байта на делимото.
Да видим сега какво стана:
1. (2000+x) * x при x<2000 се събира в 3 байта.
2. Правим двубайтово събиране x + 2000
Резултатът е в 2 байта.
3. Умножавамe резултата по x (16 бита * 16 бита)
Резултатът се събира в 3 байта, като ако не ти
трябва супер точност, още тук правиш едно
делене на 256, т.е. младшият байт от трите
все едно го няма. Значи имаме пак резултат
в 2 байта.
4. Сега правим умножение по 73 (16 бита * 8 бита).
Пак имаме трибайтов резултат, на който младшият
байт не ни трябва (защото трябаше да делим още един
път на 256).
5. Честито!
Ако тази точност не ти е достатъчна, трябва да
вдигнеш разрядността.
Ако не знаеш как се умножават цели числа, обади
се пак.
Поздрави
OldAss





Цялата тема
ТемаАвторПубликувано
* Умножение и деление на асемблер svetlin   14.12.00 17:52
. * Отг: Умножение и деление на асемблер Kpoмид   14.12.00 20:06
. * Отг: Умножение и деление на асемблер svetlin_anon_anon   15.12.00 08:40
. * Отг: Умножение и деление на асемблер Дизeлджия   15.12.00 16:41
. * Абе я се стегни...Ето ти една идея. Shveik   15.12.00 23:47
. * Отг: Абе я се стегни...Ето ти една идея. Tonimir_anon   16.12.00 01:01
. * Отг: Абе я се стегни...Ето ти една идея. svetlin   21.12.00 22:26
. * Отг: Абе я се стегни...Ето ти една идея. b3453_anon   16.12.00 04:12
. * Отг: Абе я се стегни...Ето ти една идея. maxmaniak_anon   19.12.00 21:19
. * Отг: Умножение и деление на асемблер b35765_anon   16.12.00 04:04
. * процедурка. Kpoмид   16.12.00 16:29
. * сори... не съобразих... Kpoмид   16.12.00 16:33
. * Отг: Битовете, битовете! OldAss_anon_anon   20.12.00 09:10
. * Отг: Умножение и деление на асемблер CALL-151   20.12.00 16:19
. * Отг: Умножение и деление на асемблер CALL-151   20.12.00 16:21
. * скива ли кво е гадно :)? Kpoмид   20.12.00 19:14
. * Отг: скива ли кво е гадно :)? Tonimir_anon   21.12.00 00:57
. * Отг: скива ли кво е гадно :)? Tonimir_anon   21.12.00 00:58
. * Отг: скива ли кво е гадно :)? lnfoMatic   21.12.00 08:32
. * Отг: скива ли кво е гадно :)? Tonimir_anon   22.12.00 03:01
. * Отг: скива ли кво е гадно :)? lnfoMatic   22.12.00 14:56
. * Отг: скива ли кво е гадно :)? Tonimir_anon   23.12.00 04:51
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.