На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Перед отправкой сообщения внимательно прочтите правила раздела!!!
1. Запрещается обсуждать написание вирусов, троянов и других вредоносных программ!
2. Помните, что у нас есть FAQ раздела Assembler и Полезные ссылки. Посмотрите, возможно, там уже имеется решение вашего вопроса.

3. Настоятельно рекомендуем обратить особое внимание на правила форума, которые нарушаются чаще всего:
  3.1. Заголовок темы должен кратко отражать её суть. Темы с заголовками типа "Срочно помогите!" или "Ассемблер" будут отправляться в Корзину для мусора.
  3.2. Исходники программ обязательно выделяйте тегами [code]...[/code] (одиночные инструкции можно не выделять).
  3.3. Нежелательно поднимать старые темы (не обновлявшиеся более года) без веской на то причины.

Не забывайте также про главные Правила форума!

Добро пожаловать и приятного вам общения!!! ;)
 
Модераторы: Jin X, Qraizer
Страницы: (5) « Первая ... 2 3 [4] 5  все  ( Перейти к последнему сообщению )  
> Самый популярный ассемблер , Голосуем!
   
Укажите Ваш любимый ассемблер:
Гости не могут просматривать результаты голосования.
Гости не могут голосовать 
    cppasm,

    Цитата cppasm @
    Он бинарники чистые не шарит генерировать, а мне надо :'(


    Ну ты совсем обижаешь начальник: Compiling .ASM-source directly into a .TGA image with fasm!!
    Сообщение отредактировано: Uri -
      Дык это я про Watcom Linker писал, что FASM и NASM умеют - это мне известно. :)
        Uri, да макросы, это конечно хорошо, но вы же не станете так делать для каждой инструкции. допустим, мне надо написать прогу под p2, а я по своей глупости использую инструкции sse, не делать же макросы ко всему набору инструкций?
          Цитата
          а я по своей глупости использую инструкции sse?

          Следует ли из етого что умному ФАСМ лучше? :rolleyes: ;)
            Если ты постоянно будешь контролировать каждую команду в программе (а каждую ты не сможешь - пример те же переходы, которые генерирует сам компилятор и тебя не спрашивает near/short) то возможно да :tong:
            А ты все команды помнишь начиная с какого семейства процессоров появились, или ты каждую команду в справочнике смотреть будешь?
            По ходу разработка затянется... :D
              Цитата cppasm @
              ...По ходу разработка затянется...


              Ну, ета тема не очень подходит для обсуждения как надо програмировать на FASM, но...
              1. 8086, 80286, 80386 - можно о них можно забыть навсегда. RIP!
              2. 486, Pentium - ну скажем водораздел. Кому как хочеться.Кстати integer+FPU они те же самые как у P4.
              3. P+MMX и далее - процесоры, которых стоит поддерживать. integer+floating point+MMX инструции на 99% одинаковые. Там где не одинаковые, просто не стоит изпользовать, потому что они разные например у AMD и Intel и кроме етого ети инструкции обычно являются весьма медленные.
              4. SSE, 3DNow! и т.д. - ето очень дурной тон написать програму которая ложиться только на один комплект из етих инструкциях. Поетому все равно они тебе будут нужны все, даже и если одна процедура изпользует SSE, а другая 3DNow!, а вот решать какую процедуру надо звать, решаеться во время выполнения...
                В институте заставляют... Только нифига интересного в нем не нахожу :(
                Абсолютно тупой - в этом его огромный плюс... Что напишешь то и получишь..
                  Ты это о чём, собственно?
                    А где Z-80
                    Это самый классный ассемблер
                    Самые толковые команды
                      FASM!!!!!!
                        Цитата [500mhz] @
                        вот чем мне фасм нравится там все в одном флаконе и компилер и линкер

                        Это большой недостаток. Я частенько пишу на тасме, а линкую сторонним линкером, например ваткомовским ;)
                        Цитата Uri @
                        Кстати, а ты рабочий 286й щас где-нибудь найти можешь? И что б его еще где заюзать надо было?

                        У нас в одном цеху тройки стоят, и менять их просто не на что, любой современный загнется через пару недель от пыли, мазута, жары и плохого настроения работяг :tong: А у этих все что можно обернули газетками, и ничего, пашут :)
                        Цитата cppasm @
                        Я лично пользуюсь под MS-DOS (который по мнению многих тоже умер)

                        Это не дос умер, это мозги у некоторых умерли ;) Дос еще долго будет спросом пользоваться, как единственная надежная и действительно real-time система.
                        Цитата Uri @
                        Заметь, спроектирован "под ДОС", а не под "Ассемблер х86".

                        :blink: "Ничего не понимаю" ©.
                        Цитата Uri @
                        Жалкие потуги добавить в тасм высокоуровневую функциональность (+ поддержка программирования под Windows) с треском провалились

                        Слова, слова... Можно поконкретнее? ИМХО в тасме высокоуровневых средств больше чем в любом другом, хотя он и дедушка уже ;)
                        Цитата Uri @
                        (прошу оценить объемы работ по написанию реализации макросредствами MMX, SEE и т.д. команд).

                        Эээээ... о каком объеме речь?
                        Цитата Uri @
                        Разработчики давным-давно забили боольшущий болт на тасм

                        Да? Не надо панику сеять, они забили на него как на отдельный продукт, но он идет в комлекте с тем же Си.
                        Цитата Uri @
                        Практически полное отсутствие библиотек. Даже (подчеркиваю - Даже) для Windows

                        Ты просто не умеешь их готовить © :lol: Почему у меня никогда не возникало проблем с либами? Голова и руки то зачем нужны ;)
                        Цитата Uri @
                        Вот попробуйте сделать на тасме и на фасме следующие примеры и сравните: простой COM, простой EXE, мультисегментный EXE, простой резидент, и, главное, DPMI (то-есть смешанный 16- и 32-битный код)?

                        Что то я не пойму, в чем здесь проблема?
                        ExpandedWrap disabled
                          ideal
                          model ххххх
                           
                          dataseg
                          ....
                          udataseg
                          ....
                          codeseg
                            start:
                              startupcode
                              ....
                              ....
                          end start

                        Получится COM или ЕХЕ, в зависимости от модели ;) причем прекрасно подходит и под 16-ти битные проги (в том числе и резиденты), и под 32-х битные, в том числе и под виндовс :tong: Template однако :lol: Попробуй такой универсальности добиться в фасме.

                        А если по существу, то вот некоторые достоинства тасма:
                        1. развитая поддержка всевозможных моделей памяти и ЯВУ.
                        2. режим IDEAL :wub: По сути это уже нечто большее чем просто асм.
                        3. упрощенные директивы, такие как CODESEG, DATASEG, UDATASEG, STARTUPCODE и прочее.
                        4. ни в одном асме нет такой удобной поддержки высокоуровневых средств. например вызов подпрограмм с параметрами, или вызов метода объекта, локальные переменные.
                        5. оптимизация переходов. не нужно гадать какой переход ставить, тасм сам все подставит :tong:
                        6. кто сказал что под виндовс он не удобен? берешь инклюды масма и подключаешь :tong: просто временно переходишь в режим MASM.
                        7. ни в одном асме нет такого удобного способа объявлять подпрограммы и типы данных - TYPEDEF и PROCDESC.
                        8. после бессонной ночи трудно еще что то припомнить, потому пока останавлюсь :D
                        Uri, а в фасме есть что то типа GLOBAL? Незаменимая штука в многомодульных проектах. А масмовский баг (mov ax,[0]) как в фасме компилится?
                          назло всем юным фанбоям фасма, победил TASM ;)
                            Цитата Uri @
                            Практически полное отсутствие библиотек. Даже (подчеркиваю - Даже) для Windows

                            Здесь лежит конвертер(с сорсами) масмовских инклюдов в тасмовские под режим IDEAL, и естественно сам windows.inc с примером ;)
                            http://www.mujweb.cz/www/komsbomb/
                            А также множество других интересных примеров (все под тот же IDEAL) :yes:
                            Так что Тасм жив!
                            Сообщение отредактировано: AndNot -
                              Голосовал за TASM и не жалею, но сейчас перешёл на WASM - Watcom Assembler.
                              Синтаксис tasm (не IDEAL)/masm, open source, поддержка MMX, Ext MMX, SSE, SSE2, SSE3, 3DNow! и т.д.
                              Достаточно активно развивается.
                              Есть поддержка команд типа pushd, pushw и т.д. что удобно если надо в 16-битном режиме скажем dword в стек занести.
                              Появилось только в tasm32, а он под ДОС сам по себе не работает.
                              Хотя есть HX DOS Extender - позволяет консольные Win32 проги под ДОС запускать, с ним работает.
                              Из недостатков - нет поддержки локальных меток за исключением анонимных ( @@: )
                              Правда я разработчикам указал на этот недостаток - обещались пофиксить в следующих релизах, пока юзаю свой препроцессор :)
                              Плюс у wlink появилась возможность создавать чистые бинарники, да и поддерживает он OMF OBJ, COFF OBJ, ELF OBJ и хз ещё что.
                              Про tlink такого сказать нельзя.
                              Сообщение отредактировано: cppasm -
                                Если уж про аналоги говорить, то есть такой Lazy Assembler. Совместим с тасм IDEAL. Поддержка инструкции вплоть до SSE4 и много еще чего интересного. И до сих пор развивается.

                                Добавлено
                                Но все равно предпочитаю проверенный временем тасм. А линкеры при необходимости можно и подобрать.
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0414 ]   [ 16 queries used ]   [ Generated: 18.07.25, 04:53 GMT ]