Здравствуйте, LaptevVV, Вы писали:
LVV>Здравствуйте, Molchalnik, Вы писали:
LVV>А ассемблерную вставку использовать — никак?
так она же от транслятора зависит, причем сильно.
LVV>Зачем писать ОТДЕЛЬНУЮ функцию на ассемблере ?
а зачем писать вставку? как раз со вставками возникает больше проблем...
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"
Здравствуйте, Molchalnik, Вы писали:
M>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"
А ассемблерную вставку использовать — никак?
Зачем писать ОТДЕЛЬНУЮ функцию на ассемблере ?
Или тогда, может быть, использовать FASM ?
А то уж больно давно не встречал в сети тасмов — древнее слово...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Molchalnik, Вы писали:
M>Подскажите, как написать короткую функцию для проекта на с++, M>чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"
написать "или", а затем натравить конвертор, тем более, что они есть готовые.
у разных асмов и синтаксис разный. nasm никогда на совместимость с masm'ом и не претендовал. tasm как-то совместим с masm'ом, но это не ваш случай.
а плюсы это принципиально? что должна делать эта функция? вызывать функции, написанные на плюсах, от нее требуется? а это функция сама по себе или как? ее кто вызывать будет?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, LaptevVV, Вы писали:
LVV>Здравствуйте, Molchalnik, Вы писали:
M>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или" LVV>А ассемблерную вставку использовать — никак?
Я и сделал для того, чтобы избавится от асм-вставки.
Если бы асм-вставки были унифицированы, то было бы норм.
Но каждый компилер по-своему извращается.
Дублировать код для gcc и для всего остального мне как-то не хочется.
LVV>Зачем писать ОТДЕЛЬНУЮ функцию на ассемблере ?
Проект компилится в разных средах, поэтому я пытаюсь так сделать некую унификацию без дубляжа кода
LVV>Или тогда, может быть, использовать FASM ?
может быть, а почему fasm лучше nasm'а?
LVV>А то уж больно давно не встречал в сети тасмов — древнее слово...
проект компилится не только под qt, но и под билдер...
Здравствуйте, мыщъх, Вы писали:
М>Здравствуйте, Molchalnik, Вы писали:
М>а плюсы это принципиально? что должна делать эта функция? вызывать функции, написанные на плюсах, от нее требуется? а это функция сама по себе или как? ее кто вызывать будет?
её вызывает с++. Она не вызывает никого из с++, но использует глобальные переменные из с++
код в виде асм-вставки на билдер уже есть, нужно теперь сделать так, чтобы он "везде работал", добится универсальности
Здравствуйте, мыщъх, Вы писали:
М>Здравствуйте, Molchalnik, Вы писали:
М>написать "или", а затем натравить конвертор, тем более, что они есть готовые.
Ну, на крайняк, как костыльный вариант, можно написать в версии "асм-билдер-визуалстудио", а в кьюте в свойствах проекта добавить этап конвертации и компиляции, наверное...
Но это уж совсем на крайний. А ключевых слов для поиска конвертера не накидаешь?
Здравствуйте, Molchalnik, Вы писали:
M>>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или" LVV>>А ассемблерную вставку использовать — никак?
M>Я и сделал для того, чтобы избавится от асм-вставки. M>Если бы асм-вставки были унифицированы, то было бы норм. M>Но каждый компилер по-своему извращается. M>Дублировать код для gcc и для всего остального мне как-то не хочется.
Понятно. Как-то я об это позабыл — редко в разных средах вставки делаю... LVV>>Или тогда, может быть, использовать FASM ? M>может быть, а почему fasm лучше nasm'а?
Я имел ввиду лучше тасма... LVV>>А то уж больно давно не встречал в сети тасмов — древнее слово... M>проект компилится не только под qt, но и под билдер...
Тогда понятно.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>>>Или тогда, может быть, использовать FASM ? M>>может быть, а почему fasm лучше nasm'а? LVV>Я имел ввиду лучше тасма...
если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...
Здравствуйте, Molchalnik, Вы писали:
M>Здравствуйте, LaptevVV, Вы писали:
LVV>>>>Или тогда, может быть, использовать FASM ? M>>>может быть, а почему fasm лучше nasm'а? LVV>>Я имел ввиду лучше тасма... M>если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...
M>так что там с их совместимостью ?
У него мощнячий макро.
Если не напрямую, то, скорее всего, можно будет для несовместимых особенностей накропать макросов.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
LVV>Здравствуйте, Molchalnik, Вы писали:
M>>Здравствуйте, LaptevVV, Вы писали:
LVV>>>>>Или тогда, может быть, использовать FASM ? M>>>>может быть, а почему fasm лучше nasm'а? LVV>>>Я имел ввиду лучше тасма... M>>если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...
M>>так что там с их совместимостью ? LVV>У него мощнячий макро. LVV>Если не напрямую, то, скорее всего, можно будет для несовместимых особенностей накропать макросов.
чего-то я не понимаю. возможно ли на уровне макросов отличить tasm от nasm и fasm?
Здравствуйте, Molchalnik, Вы писали:
M>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"
А нельзя из этой зависимой части сделать либу и использовать ее уже по необходимости без перекомпиляции?
Здравствуйте, pva, Вы писали:
pva>Здравствуйте, Molchalnik, Вы писали:
M>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или" pva>А нельзя из этой зависимой части сделать либу и использовать ее уже по необходимости без перекомпиляции?
Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?
Здравствуйте, Molchalnik, Вы писали:
M>Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?
dll / so + QLibrary
на билдере и вижуале тоже объявить импорт можно без проблем.
Здравствуйте, pva, Вы писали:
pva>Здравствуйте, Molchalnik, Вы писали:
M>>Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт? pva>dll / so + QLibrary pva>на билдере и вижуале тоже объявить импорт можно без проблем.
Т.е. ты предлагаешь для каждой платформы делать либу отдельно?
Здравствуйте, Molchalnik, Вы писали:
M>Т.е. ты предлагаешь для каждой платформы делать либу отдельно?
Извини, невнимательно прочитал твое первое сообщение. Мне показалось что ты под каждую ИДЕ писал либу и хочешь теперь уйти на единообразие. Получается сейчас у тебя под каждую платформу свой асм модуль. А кросс-компиляцию не пробовал? Ну, например, с единых исходников для насма скомпилировать модуль для винды? Через cygwin или еще как.
Здравствуйте, pva, Вы писали:
pva>Здравствуйте, Molchalnik, Вы писали:
M>>Т.е. ты предлагаешь для каждой платформы делать либу отдельно? pva>Получается сейчас у тебя под каждую платформу свой асм модуль.
Нет, у меня один модуль, я его напильником легко дорабатываю под tasm и легко дорабатываю под nasm.
Но не знаю, как универсально сделать. Готов, при необходимости, заменить насм fasm'ом или ещё чем-то, если поможет.
Здравствуйте, Molchalnik, Вы писали:
M>Здравствуйте, мыщъх, Вы писали:
М>>Здравствуйте, Molchalnik, Вы писали:
М>>написать "или", а затем натравить конвертор, тем более, что они есть готовые.
M>подскажи конвертор, плиз, а то поиск ничего не дал пока...
я пользовался ta2as, хотя давно это было. наверное сейчас можно найти что-то получше. да и самому несложно написать скрипт на питоне. для питона есть ply (lex & yacc) и есть готовые грамматики для синтаксиа интел (читай: тасм в режиме масма).
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, мыщъх, Вы писали:
М> да и самому несложно написать скрипт на питоне. для питона есть ply (lex & yacc) и есть готовые грамматики для синтаксиа интел (читай: тасм в режиме масма).
питона я, увы, не знаю, и с чем его едятЪ не видел. а ключевые слова для поиска настолько расплывчаты, что выдают всякий мусор. Эээх, угробил яндекс свой приличный поиск, заменил какой-то гуглподобной хнёй...
M>Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?
билдер вроде с рождения умел coff obj файлы линковать
соотв-но зачем tasm тогда нужен ?
для visual studio тоже можно — гуглить что-нть типа yasm visual studion integration
Здравствуйте, redp, Вы писали:
R>билдер вроде с рождения умел coff obj файлы линковать R>соотв-но зачем tasm тогда нужен ?
Если ты мне подскажешь, как заставить билдер запускать nasm для компиляции кода в объектник, то это пять! Даже с плюсом
А так, хз, есть ли в этом смысл.