User Tag List

Страница 50 из 91 ПерваяПервая ... 464748495051525354 ... ПоследняяПоследняя
Показано с 491 по 500 из 907

Тема: Мощная среда ZXDev для разработки НА ПЯТИ ЯЗЫКАХ для ZX готова к тестированию

  1. #491

    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,869
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    110
    Поблагодарили
    66 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстати, в этой программе kubik неэффективно сделан вывод на экран, зачем-то каждая строка выводится отдельными операторами. Можно было в цикле. Но зато выявилось преимущество SDCC - он не повторяет в данных одинаковые строки, а ZX Like повторяет. В общем, доработаю это у себя.

  2. #492

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    Кстати, в этой программе kubik неэффективно сделан вывод на экран, зачем-то каждая строка выводится отдельными операторами. Можно было в цикле. Но зато выявилось преимущество SDCC - он не повторяет в данных одинаковые строки, а ZX Like повторяет. В общем, доработаю это у себя.
    Надо отдать должное, - у ZX Like Pascale код гораздо чище, чем у SDCC.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

  3. #493

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,681
    Спасибо Благодарностей отдано 
    2,716
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    130 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Kubik написан (под моим руководством конечно) моей племянницей, отсюда неоптимальности.

    Андрей, чтобы не было вот такого:
    Код:
          ld    hl,0
          ld    (_ONE),hl
          ld    hl,0
          ld    (_TWO),hl
          ld    hl,0
          ld    (_THREE),hl
    советую сделать “слово состояния процессора”. И вот ещё идеи по оптимизации.

  4. #494

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    ... ещё идеи по оптимизации.
    Ну что, Олег, - навостряй лыжи прикручивать к ZXDev ZX Like Pascal
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

  5. #495

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,681
    Спасибо Благодарностей отдано 
    2,716
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    130 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если видите какие-то преимущества слияния проектов, возражений нет, однако я предпочитаю открытый софт - его легче сопровождать и дорабатывать.

    Замечу, что в SDCC реализованы более сложные оптимизации, чем в ZX-Like Pascal.

    Sergey, накопились вопросы по HiTech C, если можно.

    • Не нашёл откуда качать HiTech C v3.09 для DOS.

    • Есть ли какие-либо преимущества от использования DOS-версии перед CP/M-версией? (например, можно ли задавать пути? - ведь в CP/M нет каталогов и всё должно быть свалено в одну кучу).

    • Тестировались ли более свежие (хоть и платные) версии HiTech C для Z80? (у них может быть ещё более качественный кодогенератор).

  6. #496

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    • Не нашёл откуда качать HiTech C v3.09 для DOS.
    Забудь, версии под дос не существует.
    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    • Есть ли какие-либо преимущества от использования DOS-версии перед CP/M-версией? (например, можно ли задавать пути? - ведь в CP/M нет каталогов и всё должно быть свалено в одну кучу).
    Ввиду отсутствия первой - никаких. Да, в в CP/M я храню исходные тексты на одном диске с дистрибутивом HiTechC. Скорее всего, можно разнести на разные "диски" - не пробовал пока. Можно скриптами перед компиляцией копировать к файлам проекта эмулятор CP/M и необходимые cp/m-программы и др.файлы, а после компиляции - удалять их.
    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    • Тестировались ли более свежие (хоть и платные) версии HiTech C для Z80? (у них может быть ещё более качественный кодогенератор).
    Я не тестировал, т.к. ничего недоступно.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

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

  8. #497

    Регистрация
    21.05.2006
    Адрес
    Canada
    Сообщений
    78
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    Замечу, что в SDCC реализованы более сложные оптимизации, чем в ZX-Like Pascal.
    Глазок оптимизатор, который поставляется с SDCC является достаточно мощным и может быть использован для улучшения вывода SDCC в значительно.

    SDCC имеет ряд недостатков: он не может справиться с статика, длинных или плавает эффективно. Статика особенно важно, потому что лучшее исполнение Z80 происходит от их использования в предпочтении к локальным переменным, когда разумно. Но это не случай с SDCC - использование статики приводит к плохой код. Во всяком случае, эти проблемы могут быть решены с помощью щелевого оптимизатора, и мы делали, что в z88dk. Если вы используете SDCC через z88dk качество кода гораздо лучше.

    Другая проблема SDCC имеет это относится к z80 как чистый 8-битный процессор и, в основном игнорирует свои 16-битные инструкции. Опять мы можем попытаться исправить, что в peepholer но мы не всегда можем это сделать. SDCC иногда меняет порядок байт в коде, который не легко исправить.

    Посмотрите на состояние вещей в настоящее время при использовании SDCC через z88dk:

    https://drive.google.com/file/d/0B6X...ew?usp=sharing

    Эта программа вычисляет пи до 800 знаков после запятой, и мы используем его для сравнения 32-битной целочисленной арифметики. Оба выходной файл ASM были составлены с использованием SDCC z88dk библиотеки. "пи-sdcc.opt" код, который генерирует SDCC сам по себе. "пи-z88dk.opt" это код после z88dk применяет свои правила, чтобы улучшить его. Это гораздо лучше, и это почти все из щелевого оптимизатора SDCC в.

    Кроме стороне генерации кода, нет никакой другой компилятор Z80 С, что делает столько оптимизации в переднем конце. Это только генерацию кода и библиотек (написанный на C), которые весом вниз SDCC.

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


    The peephole optimizer that comes with sdcc is quite powerful and can be used to improve sdcc's output considerably.

    sdcc has a number of weaknesses: it can't deal with statics, longs or floats efficiently. Statics are especially important because the best z80 performance comes from using them in preference to local variables when reasonable. But that's not the case with sdcc -- use of statics leads to poor code. Anyway, these problems can be fixed by the peephole optimizer and we've been doing that in z88dk. If you use sdcc through z88dk the code quality is much better.

    The other problem sdcc has is it treats the z80 like a pure 8-bit processor and mostly ignores its 16-bit instructions. Again we can try to fix that in the peepholer but we can't always do that. sdcc sometimes swaps endianness in code which is not easy to fix.

    Have a look at the state of things now when using sdcc through z88dk:

    https://drive.google.com/file/d/0B6X...ew?usp=sharing

    This program computes pi to 800 decimal places and we use it to benchmark 32-bit integer arithmetic. Both asm output file were compiled with sdcc using the z88dk libraries. "pi-sdcc.opt" is the code that sdcc generates by itself. "pi-z88dk.opt" is the code after z88dk applies its rules to improve it. It's much better and this is almost all due to sdcc's peephole optimizer.

    Apart from the code generation side, there is no other z80 C compiler that is doing as much optimization in the front-end. It's just the code generation and libraries (written in C) that are weighing down sdcc.
    [свернуть]


    Sergey, накопились вопросы по HiTech C, если можно.

    • Не нашёл откуда качать HiTech C v3.09 для DOS.
    Hitech С v3.09 еще, кажется, отстают в бенчмаркинга:
    http://www.z88dk.org/wiki/doku.php?i...#dhrystone_2.1

    Там не было более поздней версии V7 для DOS, но я не могу найти его, и это больше не продается, насколько я знаю.

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


    Hitech C v3.09 still seems to fall behind in benchmarking:
    http://www.z88dk.org/wiki/doku.php?i...#dhrystone_2.1

    There was a later version v7 for dos but I cannot find it and it's no longer being sold as far as I know.
    [свернуть]

  9. #498

    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,869
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    110
    Поблагодарили
    66 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    я предпочитаю открытый софт - его легче сопровождать и дорабатывать.
    Исходник ZX Like Pascal положил тут

  10. #499

    Регистрация
    15.02.2015
    Адрес
    г. Могилёв, Беларусь
    Сообщений
    931
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    73 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Чем Компонентный Паскаль отличается от Оберона-2?
    ¡Un momento, señor fiscal!


  11. #500

    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,681
    Спасибо Благодарностей отдано 
    2,716
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    130 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    КП позиционируется как диалект (фактически надмножество) Оберона-2 для промышленного применения. Прикладному программисту КП покажется более удобным и фичастым. Некоторые приятные мелочи, как: IN/OUT параметры процедур, расширенная работа с битами. Главная фича КП, отсутствующая в О2, - реализация абстрактных интерфейсов.



    Цитата Сообщение от wikipedia
    Основные уточнения Компонентного Паскаля по сравнению с Обероном-2 касаются следующего:

    1. Главная идея уточнений по сравнению с Обероном-2 была в том, чтобы дать проектировщику компонентного каркаса (т.е. интерфейсов модулей, определяющих абстрактные классы для конкретной проблемной области) более полный контроль над её проектируемыми свойствами в плане безопасности. Введены специальные атрибуты для типов (ABSTRACT, EXTENSIBLE, LIMITED) и методов (ABSTRACT, EMPTY, EXTENSIBLE), позволяя автору программной компоненты (группы модулей) осуществлять контроль в плане того, разрешать или нет модулям-клиентам расширять предлагаемые им типы.
    2. Модернизирована несколько устаревшая система основных типов Оберона: теперь набор основных типов Компонентного Паскаля является надмножеством для основных типов языка Java. Основные «рабочие» типы INTEGER, REAL и CHAR соответствуют 32-, 64- (т. н. двойная точность) и 16-(Unicode)-битовым переменным, что позволяет уменьшить разнообразие основных типов, реально используемых в большинстве случаев; использование других типов (LONGINT, SHORTREAL, SHORTCHAR и т. д.) ограничивается специальными приложениями.
    3. Добавлены базовые средства для работы с цепочками литер (неявный тип String), что вместе со стандартным модулем Strings в системе программирования BlackBox делает Компонентный Паскаль более удобным, чем Паскаль или Оберон, для работы со строками. Цепочки литер представляются массивами литер (ARRAY OF CHAR или ARRAY OF SHORTCHAR), причем значением считается последовательность литер до первого вхождения специальной литеры-ограничителя 0X. Цепочки литер можно сравнивать (подразумевается лексикографическое сравнение) и складывать (конкатенация). Конструкция a := b$ позволяет скопировать в массив литер a цепочку, хранящуюся в массиве литер b (включая литеру-ограничитель 0X), даже если присваивание a := b запрещено (например, из-за разной длины массивов a и b).

    Полное описание синтаксиса языка в расширенной форме Бэкуса-Наура приведено на страницах Сообщения о языке Компонентный Паскаль. Оно содержит 34 грамматических выражения, что лишь на одно больше чем для Oberon-2.
    Имеется 2 реализации КП: BlackBox Component Builder (Windows/Linux) и GPCP (.NET/JVM). Последний ещё более расширен: добавлена обработка исключений, новые типы и т.д. Также в XDev реализованы некоторые возможности языка КП.

    Рекомендую относиться к О2/КП как к "ассемблеру ООП", т.е. с точки зрения фичь они проигрывают C#/Java. Среды разработки на О, О2, AO, КП - чаще всего не классические IDE + отладчик (хотя встречаются и такие), и с этой точки зрения тоже проигрывают.

    А ещё есть Модула-2 и Модула-3. Тоже хорошие языки. Даже несколько больше и фичастее Оберона, но намного меньше Ada/C++.

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    Исходник ZX Like Pascal положил тут
    Андрей, благодарю, что ты решился.

    Практика показывает, что страх потерять контроль над разработкой, открыв исходники, - неоправдан. Честно. Взамест проект может приобрести более конструктивную и качественную критику (уже на основе взгляда на код), новых участников и новую жизнь. А может и не приобрести. Как повезёт. У наший с тобой проектов потенциальная аудитория маловата, увы. Мои самые лучшие юзеры, как правило, уходили непонятно куда. Вот и Руслан в теме испрашивал что-то вроде лазер бейсик, а что может быть ближе к Laser Basic, чем ZXDev + библиотека Laser? Я ему даже засмартлинковал (порезал на части) библиотеку Laser, потратил на это несколько дней. Очень кропотливая работа. Хотя по-честному его целиком переписывать надо. С учётом новых достижений кодерской мысли. Но то мечты, а это уже реальная отлаженная библиотека. Но, упс, получается, зря делал.

Страница 50 из 91 ПерваяПервая ... 464748495051525354 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. мощная игрушка
    от ZEman в разделе Игры
    Ответов: 128
    Последнее: 23.03.2024, 17:05
  2. Ответов: 5
    Последнее: 20.06.2011, 03:18
  3. Видеоконтроллер из пяти микросхем
    от zx-kit в разделе Изображение
    Ответов: 20
    Последнее: 31.03.2011, 14:48

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

Ваши права

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