User Tag List

Страница 5 из 5 ПерваяПервая 12345
Показано с 41 по 50 из 126

Тема: ASAM Compiler By Rob F. / Entire Group ...

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

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

    Регистрация
    03.05.2007
    Адрес
    St. Petersburg
    Сообщений
    297
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Robus Посмотреть сообщение
    Зацикливание будет только в случае адреса #8003. Поскольку длина кода будет меняться от адреса куда попадает "Х" !!!
    То есть ассемблер не выявляет циклических зависимостей, просто впадая в бесконечный цикл проходов, правильно?

    Тогда такой вопрос: а как он определяет необходимость дополнительного прохода? Я имею в виду формальный критерий.

    Ведь кроме случаев, когда подходящих значений меток нет (как, например, с ORG #8003-(END-START) выше), есть случаи, когда подходящих значений меток несколько. Я не знаю как это записать на ASAM, но схематично это может выглядеть так:

    Код:
            ORG #8008-(END-START)
    START   DB "ABC"
             IF $ = #8000
             DB "XX"
             ELSE
             DB "Y"
             ENDIF
             DB "DEF"
    END
    Будет ли в этом случае какое-нибудь указание от ассемблера на неоднозначность?
    Higgins ZX Spectrum Emulator 8.10 alpha 3 available
    Please write us to report a bug or request a feature.

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

  3. #2

    Регистрация
    04.03.2005
    Адрес
    Ukraine, Kiev
    Сообщений
    792
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Wink

    Цитата Сообщение от Higgins Посмотреть сообщение
    То есть ассемблер не выявляет циклических зависимостей, просто впадая в бесконечный цикл проходов, правильно?
    Можно прописать предел циклов, сейчас не скажу, какая команда, прости, я её делал в 2002-ом году и забыл ... А с собой нет описания. Прервать можно ещё ESC ... Сейчас вроде предел по проходам 64 или 128 ...


    Цитата Сообщение от Higgins Посмотреть сообщение
    Тогда такой вопрос: а как он определяет необходимость дополнительного прохода?
    Второй проход происходит тогда, когда адрес метки изменился в отношении к предыдущему проходу и при этом метка использовалась в коде. Повторный проход может быть ещё при экзотических командах ... Например "JZ", Если ты используешь "JZ", то компилятор сам будет выискивать где надо поставить "JR Z" или "JP Z". Тогда применяет другой метод, который сам за тебя определит нужное количество JR/JP, для минимального размера памяти ...


    Цитата Сообщение от Higgins Посмотреть сообщение
    Ведь кроме случаев, когда подходящих значений меток нет (как, например, с ORG #8003-(END-START) выше), есть случаи, когда подходящих значений меток несколько. Я не знаю как это записать на ASAM, но схематично это может выглядеть так:
    Записывать надо так:
    Код:
            ORG #8003-(END-START)
    START   DB "ABC"
            EQU IF_FLAG=LOW($/#8000)
            .IF_FLAG
             DB "XX"
            ..
            .1-IF_FLAG
             DB "Y"
            ..
            DB "DEF"
            EQU END=$
    Главное адресом не попадать на точку когда, который будет при каждом проходе END менять на 8003/8004.

    А почему возникла именно такая задача ? Или просто попытка поймать глюк асма ? Поймать можно, - он не идеален ...
    AAA когда меня режут, я терплю, но когда дополняют, становится нестерпимо.

  4. #3

    Регистрация
    03.05.2007
    Адрес
    St. Petersburg
    Сообщений
    297
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Robus Посмотреть сообщение
    Можно прописать предел циклов, сейчас не скажу, какая команда, прости, я её делал в 2002-ом году и забыл ... А с собой нет описания. Прервать можно ещё ESC ... Сейчас вроде предел по проходам 64 или 128 ...
    Да нет, не стоит. Здесь вопрос именно в том, как устроено вычисление меток. Может быть, зацикливание это не не самый плохой вариант для такого кода.

    Цитата Сообщение от Robus Посмотреть сообщение
    А почему возникла именно такая задача ? Или просто попытка поймать глюк асма ?
    В общем да, просто проверка на вшивость. К практике это имеет то отношение, что, с одной стороны, отказ от форвардных ссылок на метки в некоторых контекстах -- это серьезное ограничение, с другой стороны меньше всего хочется быть жертвой непринужденного буйства ассемблера при вычислении таких меток.
    Higgins ZX Spectrum Emulator 8.10 alpha 3 available
    Please write us to report a bug or request a feature.

  5. #4

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

    По умолчанию

    Цитата Сообщение от Robus Посмотреть сообщение
    Вижу, что люди заинтересовались моим компилятором
    Исходники его, если они не тайна, покажите пожалуйста, адаптирую под своё окружение (Gentoo Linux, gcc 4.8.1).

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

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

  6. #5

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

    По умолчанию

    хочу скомпиленную под 64бита версию
    "наличие готового программного обеспечения для нового компьютера в наши дни имеет мало смысла."
    "Еще вопрос - почему на Спектруме большинство звуков на AY булькающие ? Как это исправить ?"
    (c) zst

Страница 5 из 5 ПерваяПервая 12345

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

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

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

Похожие темы

  1. Colorbok^Phantom Family Group
    от rajdee в разделе Графика
    Ответов: 12
    Последнее: 20.01.2011, 23:32
  2. C compiler
    от vitasam в разделе Программирование
    Ответов: 17
    Последнее: 25.08.2005, 16:42

Ваши права

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