User Tag List

Показано с 1 по 10 из 30

Тема: 32 бит деление

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #18

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Без четких критериев оптимальности и ограничений не получится сделать оптимальную процедуру. Если говорить о развернутых вариантах, то для 8080 быстрейшим является реализация алгоритма blackmirrora, которую можно найти в ветке про пи. Насчет ее оптимальности по скорости для z80 (с соответствующей оптимизацией) я уверен не на 100%, но по крайней мере она где-то среди быстрейших.
    Если вернуться к сравнительно компактным процедурам, то изменив распределение регистров, можно еще оптимизировать

    Скрытый текст

    Код:
    DIV32:
    		ld a,b
    		ld b,16 ; BC = HLBC/DE, HL = HLBC%DE
    DIV321:
    		sla c
    		rla
    		adc hl,hl
    		jr c, DIV322
    		sbc hl,de
    		jr nc, DIV323
    		add hl,de
    		djnz DIV321
    		ld b,a
    		ret
    DIV322:
    		ccf
    		sbc hl,de
    DIV323:
    		inc c
    		djnz DIV321
    		ld b,a
    		ret
    [свернуть]

    И важно знать предполагаемые диапазоны наиболее вероятных значений делимого и делителя. Самую короткую процедуру можно оптимизировать без увеличения размера для (как мне представляется) наиболее востребованных соотношений делимого и делителя, для четкой проверки нужен конкретный test bench.
    Последний раз редактировалось ivagor; 19.02.2021 в 06:54.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    b2m(19.02.2021)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 0
    Последнее: 21.01.2021, 17:46
  2. Вопрос про EIS-деление
    от litwr в разделе ДВК, УКНЦ
    Ответов: 1
    Последнее: 16.12.2019, 20:28
  3. умножение/деление в алгоритмах ZX игр
    от bigral в разделе Программирование
    Ответов: 27
    Последнее: 18.10.2019, 13:20
  4. Деление/умножение
    от Serdjuk в разделе Программирование
    Ответов: 51
    Последнее: 25.04.2018, 15:54
  5. деление синхросигнала
    от Splinter в разделе Изображение
    Ответов: 3
    Последнее: 01.08.2005, 02:53

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •