Если больше ничего в голову не приходит, то предложу решение в лоб. Требуется процедура умножения 16х16 (результат нужен 32-разрядный, такую процедуру атмеловцы в примерах дают). Берется тестовое число 0х800000. Умножается на делитель (3- разрядный). Сравнивается с 24-разрядным делимым. А далее по теории методом половинного деления. Долго, но работает. В принципе для ускорения можно свою процедуру умножения 24*3 сделать, пусть даже методом сложения. Я когда-то так на ассемблере с 16-битными данными работал.
|