и nasm, и tasm...
От: Molchalnik  
Дата: 04.11.14 05:27
Оценка:
Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"
Re: и nasm, и tasm...
От: LaptevVV Россия  
Дата: 04.11.14 07:21
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"

А ассемблерную вставку использовать — никак?
Зачем писать ОТДЕЛЬНУЮ функцию на ассемблере ?
Или тогда, может быть, использовать FASM ?
А то уж больно давно не встречал в сети тасмов — древнее слово...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: и nasm, и tasm...
От: мыщъх США http://nezumi-lab.org
Дата: 04.11.14 07:54
Оценка:
Здравствуйте, 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.
Re[2]: и nasm, и tasm...
От: мыщъх США http://nezumi-lab.org
Дата: 04.11.14 07:58
Оценка: +1
Здравствуйте, 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.
Re[2]: и nasm, и tasm...
От: Molchalnik  
Дата: 04.11.14 08:57
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Molchalnik, Вы писали:


M>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"

LVV>А ассемблерную вставку использовать — никак?

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

LVV>Зачем писать ОТДЕЛЬНУЮ функцию на ассемблере ?

Проект компилится в разных средах, поэтому я пытаюсь так сделать некую унификацию без дубляжа кода

LVV>Или тогда, может быть, использовать FASM ?

может быть, а почему fasm лучше nasm'а?

LVV>А то уж больно давно не встречал в сети тасмов — древнее слово...

проект компилится не только под qt, но и под билдер...
Re[2]: и nasm, и tasm...
От: Molchalnik  
Дата: 04.11.14 08:59
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, Molchalnik, Вы писали:


М>а плюсы это принципиально? что должна делать эта функция? вызывать функции, написанные на плюсах, от нее требуется? а это функция сама по себе или как? ее кто вызывать будет?

её вызывает с++. Она не вызывает никого из с++, но использует глобальные переменные из с++

код в виде асм-вставки на билдер уже есть, нужно теперь сделать так, чтобы он "везде работал", добится универсальности
Re[2]: и nasm, и tasm...
От: Molchalnik  
Дата: 04.11.14 09:04
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, Molchalnik, Вы писали:



М>написать "или", а затем натравить конвертор, тем более, что они есть готовые.

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

Но это уж совсем на крайний. А ключевых слов для поиска конвертера не накидаешь?
Re[3]: и nasm, и tasm...
От: LaptevVV Россия  
Дата: 04.11.14 09:38
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"

LVV>>А ассемблерную вставку использовать — никак?

M>Я и сделал для того, чтобы избавится от асм-вставки.

M>Если бы асм-вставки были унифицированы, то было бы норм.
M>Но каждый компилер по-своему извращается.
M>Дублировать код для gcc и для всего остального мне как-то не хочется.
Понятно. Как-то я об это позабыл — редко в разных средах вставки делаю...
LVV>>Или тогда, может быть, использовать FASM ?
M>может быть, а почему fasm лучше nasm'а?
Я имел ввиду лучше тасма...
LVV>>А то уж больно давно не встречал в сети тасмов — древнее слово...
M>проект компилится не только под qt, но и под билдер...
Тогда понятно.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[4]: и nasm, и tasm...
От: Molchalnik  
Дата: 04.11.14 10:23
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>>>Или тогда, может быть, использовать FASM ?

M>>может быть, а почему fasm лучше nasm'а?
LVV>Я имел ввиду лучше тасма...
если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...

так что там с их совместимостью ?
Re[5]: и nasm, и tasm...
От: LaptevVV Россия  
Дата: 04.11.14 15:20
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>Здравствуйте, LaptevVV, Вы писали:


LVV>>>>Или тогда, может быть, использовать FASM ?

M>>>может быть, а почему fasm лучше nasm'а?
LVV>>Я имел ввиду лучше тасма...
M>если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...

M>так что там с их совместимостью ?

У него мощнячий макро.
Если не напрямую, то, скорее всего, можно будет для несовместимых особенностей накропать макросов.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: и nasm, и tasm...
От: Molchalnik  
Дата: 05.11.14 10:25
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, Molchalnik, Вы писали:


M>>Здравствуйте, LaptevVV, Вы писали:


LVV>>>>>Или тогда, может быть, использовать FASM ?

M>>>>может быть, а почему fasm лучше nasm'а?
LVV>>>Я имел ввиду лучше тасма...
M>>если fasm захавает тасмовский код без изменений, то, возможно, это выход. на qt будет fasm, на builder'е будет tasm...

M>>так что там с их совместимостью ?

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

чего-то я не понимаю. возможно ли на уровне макросов отличить tasm от nasm и fasm?
Re: и nasm, и tasm...
От: pva  
Дата: 06.11.14 17:42
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"

А нельзя из этой зависимой части сделать либу и использовать ее уже по необходимости без перекомпиляции?
newbie
Re[2]: и nasm, и tasm...
От: Molchalnik  
Дата: 07.11.14 07:38
Оценка:
Здравствуйте, pva, Вы писали:

pva>Здравствуйте, Molchalnik, Вы писали:


M>>Подскажите, как написать короткую функцию для проекта на с++, чтобы и в nasm'е, и в tasm'е компилировалось? А то у меня пока получается только "или-или"

pva>А нельзя из этой зависимой части сделать либу и использовать ее уже по необходимости без перекомпиляции?

Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?
Re[3]: и nasm, и tasm...
От: pva  
Дата: 07.11.14 09:07
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?

dll / so + QLibrary
на билдере и вижуале тоже объявить импорт можно без проблем.
newbie
Re[4]: и nasm, и tasm...
От: Molchalnik  
Дата: 07.11.14 13:34
Оценка:
Здравствуйте, pva, Вы писали:

pva>Здравствуйте, Molchalnik, Вы писали:


M>>Это как? чтобы и на qt, и на билдере? или на вижуале, например? Какой рецепт?

pva>dll / so + QLibrary
pva>на билдере и вижуале тоже объявить импорт можно без проблем.

Т.е. ты предлагаешь для каждой платформы делать либу отдельно?
Re[5]: и nasm, и tasm...
От: pva  
Дата: 07.11.14 14:08
Оценка:
Здравствуйте, Molchalnik, Вы писали:

M>Т.е. ты предлагаешь для каждой платформы делать либу отдельно?

Извини, невнимательно прочитал твое первое сообщение. Мне показалось что ты под каждую ИДЕ писал либу и хочешь теперь уйти на единообразие. Получается сейчас у тебя под каждую платформу свой асм модуль. А кросс-компиляцию не пробовал? Ну, например, с единых исходников для насма скомпилировать модуль для винды? Через cygwin или еще как.
newbie
Re[6]: и nasm, и tasm...
От: Molchalnik  
Дата: 07.11.14 14:32
Оценка:
Здравствуйте, pva, Вы писали:

pva>Здравствуйте, Molchalnik, Вы писали:


M>>Т.е. ты предлагаешь для каждой платформы делать либу отдельно?

pva>Получается сейчас у тебя под каждую платформу свой асм модуль.

Нет, у меня один модуль, я его напильником легко дорабатываю под tasm и легко дорабатываю под nasm.
Но не знаю, как универсально сделать. Готов, при необходимости, заменить насм fasm'ом или ещё чем-то, если поможет.
Re[2]: и nasm, и tasm...
От: Molchalnik  
Дата: 08.11.14 07:33
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>Здравствуйте, Molchalnik, Вы писали:


М>написать "или", а затем натравить конвертор, тем более, что они есть готовые.


подскажи конвертор, плиз, а то поиск ничего не дал пока...
Re[3]: и nasm, и tasm...
От: мыщъх США http://nezumi-lab.org
Дата: 08.11.14 08:31
Оценка:
Здравствуйте, 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.
Re[4]: и nasm, и tasm...
От: Molchalnik  
Дата: 08.11.14 14:19
Оценка:
Здравствуйте, мыщъх, Вы писали:

М> да и самому несложно написать скрипт на питоне. для питона есть ply (lex & yacc) и есть готовые грамматики для синтаксиа интел (читай: тасм в режиме масма).


питона я, увы, не знаю, и с чем его едятЪ не видел. а ключевые слова для поиска настолько расплывчаты, что выдают всякий мусор. Эээх, угробил яндекс свой приличный поиск, заменил какой-то гуглподобной хнёй...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.