Простой вопрос по FASM

Тема в разделе "WASM.BEGINNERS", создана пользователем sysexit, 31 авг 2010.

  1. sysexit

    sysexit New Member

    Публикаций:
    0
    Регистрация:
    27 авг 2010
    Сообщения:
    176
    Почему такой код не компилируется?

    Код (Text):
    1. use32
    2.  
    3. mov eax, dword ptr fs:[0]
    И еще возмонжо ли компилировать бинарик, с использованием процедур?

     
  2. iZzz32

    iZzz32 Sergey Sfeli

    Публикаций:
    0
    Регистрация:
    3 сен 2006
    Сообщения:
    355
    • mov eax,dword[fs:0]
    • Можно. См. синтаксис в .pdf из дистрибутива.
     
  3. sysexit

    sysexit New Member

    Публикаций:
    0
    Регистрация:
    27 авг 2010
    Сообщения:
    176
    А с нормальным синтаксисом не скомпилировать никак?

    mov eax, dword ptr fs:[0]
     
  4. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    sysexit
    это и есть нормальный синтаксис
    одной из важных идей фасма - логичность и однозначность записи.

    [ ... ] - данные по адресу
    адрес в этом примере - fs:0
     
  5. Guru_of_Zen

    Guru_of_Zen Member

    Публикаций:
    0
    Регистрация:
    21 янв 2010
    Сообщения:
    288
    qqwe
    ага
    и ни на что ни похожий.

    типа у всех-то не нормально и неправильно, а у нас одних -- нормально и правильно.
     
  6. sysexit

    sysexit New Member

    Публикаций:
    0
    Регистрация:
    27 авг 2010
    Сообщения:
    176
    Придется отказатся от фасма из-за его правильного синтаксиса
     
  7. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    Guru_of_Zen
    у всех это у кого?

    помойму у фасма как раз все путем. например, очень жаль, что в фасм ввели директиву ассуме. довольно напрягает в оч длинном листинге, даже своем старом, моменты вроде

    mov eax,[ebx].flags

    писать оно может и удобнее и выглядит красивее, но когда начинаешь отлаживать/расширять/изменять через полгода-год, начинаешь понимать почему так не надо делать и почему синтаксис фасма оптимальнее.

    то же и с макросами. в целом и общем - не нужны они практически.

    хотя, и кривых моментов хватает. например, со структурами.
     
  8. Phuntik

    Phuntik New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2008
    Сообщения:
    318
    Guru_of_Zen
    Неудачный наброс.

    sysexit
    Для таких вопросов раздел бегиннерс есть.
    А вообще так не поступают. С таким вопросом разобраться нужно самостоятельно.
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Всюду в квадратных скобках обозначается адрес. Есчо на z80 так было и ранее. А сегмент должен быть до скобок, так как это база для смещения. [seg:offset] не логично, интел так не пишет.
    sysexit
    Фасм вам не нужен. Тоесть у вас нет задач, для которых лучше его использовать. Масм юзайте.
     
  10. edemko

    edemko New Member

    Публикаций:
    0
    Регистрация:
    25 ноя 2009
    Сообщения:
    454
    способ мышления и не более
     
  11. Guru_of_Zen

    Guru_of_Zen Member

    Публикаций:
    0
    Регистрация:
    21 янв 2010
    Сообщения:
    288
    qqwe
    ну в манах интела/амд например.

    и поначалу на диалектах на всех ассемблерных так, как положено изначально было инженерами в манах.

    а потом появились самодуры из борланд, с "идеальными" разводками ыхых, никому не нужныме правда хехе. типо как бы одна говноконтора решила показать себя умнее инженеров производителя процов.

    за борландовскими самодурами стали повторять красноглазыя НАСМ овцы.

    ну а за ниме -- восточноевропейскей брат Томаш и другие красноглазыя ЙАСМовцы .

    =========================

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

    а естесно свой ассемблер они пишут как -- берут сорцы у предыдущего и переписывают ыхых.

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

    утрирую конечно, но примерно так оно и есть.

    самое главное -- почему интел не могет свой ассемблер выпустить отдельно ?
    компилятор делают, а имхо ассемлер по-любому в компиляторе у них есть (сорцы вначале в ассемблерный перегоняются, потом в машиннай).

    жмут наверное.
     
  12. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    Guru_of_Zen
    интел/амд производители компилеров асма?
    и при чем тут инженеры-производители процев к асму вообще? это совершенно разные вещи.
    борланд в свое время отлично конкурировала с мс на рынке компилеров, не раз последнюю обгоняя. и сдала позиции не изза "ненужности", а изза переоценки дельфи и еще некоторых слабых решений (например, было вложено мало средств в разработку оптимизатора для их компилеров) итд.

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

    Guru_of_Zen Member

    Публикаций:
    0
    Регистрация:
    21 янв 2010
    Сообщения:
    288
    ну допустим есть стандарт си -- производители компилеров придерживаются ево синтаксиса и прочего. и даже микростаф, любящая стандарты "улучшать".

    с х86 и х86_64 стандартов нету, да, но есть маны интела и амд -- первоисточники информации, каноничные так скажем стандарты.

    зачем же особо одаренные личности полезли в чужой монастрырь со своим уставом -- вот в чем вопрос ? может быть и да, оне хотели как лучше, но вышла лишь допольнительная путаница (и этот топик тому пример). воистину, благими намерениями блаблабла.

    ну которые ездют -- они и ездют на регулярно обновляющихся моделях брр версиях масма...

    а которые хотят не просто поездить, а повыеживаться -- они летают на польских джетпаках...
     
  14. edemko

    edemko New Member

    Публикаций:
    0
    Регистрация:
    25 ноя 2009
    Сообщения:
    454
    mov ebx,[esp+2*4][4*4][locals]
    Зачем о таком спорить :).
    Займитесь полезным.
    Вот у нас начались пары - учусь.