User Tag List

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

Тема: Вычисление числа Пи на ассемблере

Комбинированный просмотр

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

    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    769
    Спасибо Благодарностей отдано 
    252
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    42 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удалось постигнуть некоторые рецепты оптимизации от уважаемого ivagor и всё заработало побыстрее. Конечно, вычесть быстрее, чем умножить. Собрал такие данные для 100, 1000 и 3000 цифр.
    Commodore 64/PAL - 4.03 - 393.5 - 3527
    Commodore 128/PAL - 2.2 - 208.6 - 1868
    Commodore +4/PAL - 1.92 - 183.3 - 1641
    Amstrad CPC6128 - 2.65 - 218.4 - 1934
    Всё выложил на сайте - http://litwr2.atspace.eu/retropc.html
    Версий для БК не правил - никто не тестирует. Версия для первых IBM PC совместимых вроде бы в руках уважаемого ivagor?
    Попробовал версию treediv на Амстраде: 2.89 и 264.9 на 100 и 1000. Опять поражает разница по 100 и 1000. В первом случае Амстрад быстрее всего на 9%, а во втором на 21. По частоте Амстрад быстрее (если считать частоту Вектора 2.33) на 37% и ещё нужно надбавить процентов 5-10 за большую скорость LD и INC. Есть ещё неизученные рецепты.
    Версия final_precise, если правильно понял, требует более 40 КБ непрерывной памяти - на Амстраде в бейсике такое без головной боли не сделаешь - надо в CP/M.
    Заметил разницу в скорости, если печатать не с первой строки, т.е. со скроллингом. На Амстраде (нет текстового режима) до 3%, на Коммодоре - менее одного.
    Цитата Сообщение от Titus Посмотреть сообщение
    специально оптимизированная под Z80
    Непонятно. Выложил один из лучших кодов для z80 и нужно ещё что-то? Оптимизацию - это к уважаемуму ivagor-y. Версию treediv для z80, как понял, выкладывать не надо. Где же данные по Спектруму?

    Цитата Сообщение от ivagor Посмотреть сообщение
    как переводите мнемоники 8080->z80
    Нашел в сети awk-сценарий (http://www.hytherion.com/beattidp/comput/z80cpm.htm) - он всё и делает. Только там беда с плюсами. Поэтому их сначала нужно заменить, например, на @, а потом обратно. Ещё почему-то sbb не воспринимает.

    Цитата Сообщение от ivagor Посмотреть сообщение
    Деление 32/16=(16;16) для z80
    На Амстраде JR быстрее JP. Но код очень впечатляет, собираюсь выложить его на профильной википедии. Эту версию DIV320 гораздо труднее приспособить для работы с любым BC. В прежней достаточно было поставить JR C, а теперь простого способа совсем не видно. Нужно указывать, что работает только если BC < $8000.

    Цитата Сообщение от perestoronin Посмотреть сообщение
    И на асме можно таким образом написать программу, что при том же алгоритме она будет медленнее аналогичной программы на Бейсике.
    Ну это будет что-то почти невероятное.
    Последний раз редактировалось litwr; 30.12.2015 в 21:12.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Удалось постигнуть некоторые рецепты оптимизации от уважаемого ivagor и всё заработало побыстрее.
    ...
    Версий для БК не правил - никто не тестирует.
    Я бы на живых процессорах потестировал, скоро и до собственно БК надеюсь добраться.

  4. #3

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

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Нашел в сети awk-сценарий
    Круто, спасибо, работает!

    Цитата Сообщение от litwr Посмотреть сообщение
    вычесть быстрее, чем умножить.
    ?

    Цитата Сообщение от litwr Посмотреть сообщение
    На Амстраде JR быстрее JP
    Без тормозов в среднем условный jr скорее всего тоже будет быстрее jp, это я не додумал.

    Цитата Сообщение от litwr Посмотреть сообщение
    Ещё почему-то sbb не воспринимает
    Насколько вижу он просто забыл про sbb и не преобразует его.

    Цитата Сообщение от litwr Посмотреть сообщение
    Commodore +4/PAL - 1.92
    Ага, теперь быстрее 2 сек

    Цитата Сообщение от litwr Посмотреть сообщение
    Amstrad CPC6128 - 2.65
    Вектор с z80 и 6128 с вышеприведенной процедурой считают быстрее 2.5 сек, т.ч. определенно есть простор для оптимизации

  5. #4

    Регистрация
    25.11.2011
    Адрес
    г. Красногорск
    Сообщений
    1,389
    Спасибо Благодарностей отдано 
    16
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    что-то почти невероятное.
    Невероятно виртуальным может может указание города под Москвой и использование как домашнего сайта, сайта в доменной зоне ЕС, а остальное в очумелых руках вполне себе более "невероятное" (вполне себе в реальности).
    PS .Почему бы учебник по верстке и рекомендациям по эргономике сайтов не поковырять в перерывах между генерацией аналитики по ретро-железу?
    Пытался найти на сайте программки имеющие отношение к числу Пи, оказалось это не простой задачей с такой эргономикой и версткой. Может попроще можно сделать сайт и подобрать картинку для фона ?

    Ретрокладовая продажи

    продажи
    [свернуть]

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

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

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

Похожие темы

  1. Арифметические процедуры на ассемблере
    от spensor в разделе Программирование
    Ответов: 27
    Последнее: 13.05.2017, 20:56
  2. Мнемокоманды и числа.
    от ALKO в разделе Программирование
    Ответов: 0
    Последнее: 15.02.2014, 03:49
  3. try-catch на ассемблере z80
    от siril в разделе Программирование
    Ответов: 22
    Последнее: 30.10.2012, 21:17
  4. Определение числа сторон
    от mungo в разделе Внешние накопители
    Ответов: 1
    Последнее: 16.03.2012, 18:06

Метки этой темы

Ваши права

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