Важная информация

User Tag List

Страница 1 из 6 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 53

Тема: SDCC - Small Device C Compiler

  1. #1
    Activist
    Регистрация
    21.12.2005
    Адрес
    Kyiv/Ukraine
    Сообщений
    412
    Благодарностей: 48
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию SDCC - Small Device C Compiler

    В компилятор SDCC (начиная с ревизии #6588), добавлен новый регистровый оптимизатор, который генерит более компактный код z80.
    По заявлянию автора нового оптимизатора Philipp Klaus Krause, в теперешнем виде, этот оптимизатор уже сравнялся по размеру генерируемого кода, с компилером HITECH-C 7.80PL2
    (Также уже запланированы всячиские новые улучшения для оптимизатора.)


    Сам оптимизатор был запланирован уже давно.
    V6Z80P - Back for Good

  2. Эти 3 пользователя(ей) поблагодарили Valen за это полезное сообщение:
    Andrew771 (20.11.2011), mastermind (20.11.2011), Oleg N. Cher (20.03.2012)

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

  4. #2
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 704
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    во во только сейчас и сравняли
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

  5. #3
    Veteran
    Регистрация
    06.05.2006
    Адрес
    Ливны, Орловская обл
    Сообщений
    1,169
    Благодарностей: 192
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вообще то это совсем не "сейчас", сейчас уже r7037. А эти тесты у Филипа висят уже порядочно. И если бы у jerri было желание, он бы увидел, что ещё задолго до этого sdcc уже в некоторых тестах драл хайтек. =)
    Ну и как обычно - всегда можно найти тест, который завалит кого надо.

  6. #4
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 704
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    хайтек да завалит а ручную работу - никогда!
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

  7. #5
    Master Аватар для siril
    Регистрация
    01.02.2005
    Адрес
    perm/ru
    Сообщений
    520
    Благодарностей: 189
    Записей в дневнике
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    хайтек да завалит а ручную работу - никогда!
    А кто вручную C в ASM Z80 компилит?
    oisee.

  8. Этот пользователь поблагодарил siril за это полезное сообщение:
    breeze (21.11.2011)

  9. #6
    FishBone Crew Аватар для breeze
    Регистрация
    11.02.2005
    Адрес
    【RB】
    Сообщений
    3,586
    Благодарностей: 764
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Talking

    Цитата Сообщение от siril Посмотреть сообщение
    А кто вручную C в ASM Z80 компилит?
    тонко

  10. #7
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 704
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    Smile

    Цитата Сообщение от siril Посмотреть сообщение
    А кто вручную C в ASM Z80 компилит?
    да были люди в наше время
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

  11. #8
    Guru Аватар для VNN_KCS
    Регистрация
    11.10.2007
    Адрес
    Донецкая обл. г.Енакиево
    Сообщений
    2,316
    Благодарностей: 755
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от siril Посмотреть сообщение
    А кто вручную C в ASM Z80 компилит?
    Мдя. А кто-то в АLASM-е, Tasm-е кодит? Знаю одного - tiboh. Это Тасм. Я в Аласм. А кто ещё кодит в Спековских ассемблерах?
    Pentevo - рулез

  12. #9
    Master Аватар для siril
    Регистрация
    01.02.2005
    Адрес
    perm/ru
    Сообщений
    520
    Благодарностей: 189
    Записей в дневнике
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от VNN_KCS Посмотреть сообщение
    Мдя. А кто-то в АLASM-е, Tasm-е кодит? Знаю одного - tiboh. Это Тасм. Я в Аласм. А кто ещё кодит в Спековских ассемблерах?
    На спекрумовских ассемблерах (или на не-спектрумовских кросс-ассемблерах) кодят практически все, кто зашёл дальше бейсика =)

    Но я впервые слышу о странной методологии написать в спектрумовском ассемблере исходник на си, а затем вручную его перевести в asm z80.

    Обычно такие вещи сразу пишутся на асме, без промежуточных этапов типа си, так как при современных техниках оптимизации с широким использованием самомодифицирующегося кода и метапрограммирования, невозможно корректно и однозначно выразить все эти приёмы.

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

    Макросы могут дать более высокий уровень абстракции, но это далеко не уровень си =)

    ---------- Post added at 10:26 ---------- Previous post was at 10:22 ----------

    P.S.
    Люди, а кто-то LLVM к z80 приспособил? ^_^
    Последний раз редактировалось siril; 22.11.2011 в 07:25.
    oisee.

  13. Этот пользователь поблагодарил siril за это полезное сообщение:
    Barmaley_m (18.03.2012)

  14. #10
    Activist
    Регистрация
    21.12.2005
    Адрес
    Kyiv/Ukraine
    Сообщений
    412
    Благодарностей: 48
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию SDCC - Small Device C Compiler

    В SDCC теперь есть поддержка работы с Си данными, в разных банках памяти. Реализовано это через стандартный Embedded C механизм "Named address spaces".

    Пример:
    void set_bank0(void); // функция включения банка 0
    void set_bank1(void); // функция включения банка 1
    __addressmod set_bank0 space_bank0; // "Именованное адресное пространство" space_bank0, которое использует ф-цию set_bank0
    __addressmod set_bank1 space_bank1; // "Именованное адресное пространство" space_bank1, которое использует ф-цию set_bank1

    space_bank0 int x; // int в адресном пространстве space_bank0
    space_bank1 int* y; // указатель на int в адресном пространстве space_bank1
    space_bank0 int *space_bank1 z; // указатель в адресном пространстве space_bank1, который указывает на на int, в адресном пространстве space_bank0

    Суть метода:
    SDCC автоматически вызывает необходимую функцию при доступе (чтение или запись) к переменной. (Функция должна подключить нужную банку в адресное пространство CPU. )

    Manual.
    Ветка обсуждения из sdcc-user mail list (есть пример кода).
    Последний раз редактировалось Valen; 18.02.2012 в 17:44.
    V6Z80P - Back for Good

  15. Эти 8 пользователя(ей) поблагодарили Valen за это полезное сообщение:
    alone (18.02.2012), bigral (19.02.2012), Eltaron (19.02.2012), GriV (20.02.2012), mastermind (21.02.2012), Oleg N. Cher (20.03.2012), vinxru (19.03.2012)

Страница 1 из 6 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. ZX COMPILER
    от ALKO в разделе Программирование
    Ответов: 33
    Последнее: 13.01.2010, 02:15
  2. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16
  3. C compiler
    от vitasam в разделе Программирование
    Ответов: 17
    Последнее: 25.08.2005, 14:42
  4. An 8080/Z80 C Compiler
    от breeze в разделе Программирование
    Ответов: 1
    Последнее: 18.08.2005, 04:54

Ваши права

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