Нужно ли учить программинг под Dos

Тема в разделе "WASM.WIN32", создана пользователем Rohan, 14 фев 2005.

  1. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine


    По-разному, ведь бинарик можно и руками собрать..

    Но в общем так:
    Код (Text):
    1.  
    2. format PE GUI
    3. entry start
    4.  
    5. include '%fasminc%\Win32a.inc'
    6.  
    7. MsgCaption      db "Iczelion's tutorial no.2",0
    8. MsgBoxText      db "Win32 Assembly is Great!",0
    9.  
    10. start:
    11.     invoke MessageBox, NULL,MsgBoxText,MsgCaption, MB_OK
    12.     invoke ExitProcess,NULL
    13.  
    14. data import
    15.     library kernel32,'kernel32.dll',\
    16.         user32,'user32.dll'
    17.    
    18.     include '%fasminc%\APIa\kernel32.inc'
    19.     include '%fasminc%\APIa\user32.inc'
    20.  
    21. end data
     
  2. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    Код (Text):
    1. include '%fasminc%\Win32a.inc'


    Fasm ругается на эту строку. Где можно указать месторасположение инклюдов чтоб путь не укывать полностью?

    И откуда мне знать какой инклюд нужен? Где инфа по этому?
     
  3. v0icE

    v0icE New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2005
    Сообщения:
    6
    Адрес:
    Новосибирск
    Rohan, а чё, FASM.PDF никак не открыть и не прочитать на страницах 5-6 ?

    Если нет, то рано видно ты за этот язык берёшься... Тебе самое время читать научиться...

    P.S. извини, если грубо ответил ;)
     
  4. S_T_A_S_

    S_T_A_S_ New Member

    Публикаций:
    0
    Регистрация:
    27 окт 2003
    Сообщения:
    1.754
    Rohan



    задай переменную окружения:

    set fasminc=C:\fasm\INCLUDE



    и учись вместо
    приводить полное сообщение об ошибке
     
  5. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.552
    Адрес:
    Russia
    А я вот еще один вывод сделаю , и одна замечание.

    1) Замечание : почему вы так охотно называете ассемблер под дос ... я вот придерживаюсь названию : программировать на ассемблере под IBM PC ^)

    2) Вывод : Изучить ассемблер я так понимаю это изучить команды и методы адресации, научиться работать с памятью и устройствами... после этого вам не обязательно сразу переходить на Винду ( вы почувствовали, что готовы ). Мой совет : перейти на Сегментированный ( или сегментный точно не знаю и врать не буду :) ) ассемблер стандарта GNU ... в нем есть довольно много прелестей. Думаю вам понравица и вы поймете к чему я это говорю.
     
  6. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    v0icE

    Ответил ты нормально, так разве это дело всего 6 страницах? Я думал там этого гораздо больше! И я так толком понять и не могу как исходники от masm переделывать для fasm



    И быть может я действительно глупый, но как правильно задать в ini расположение include

    так

    [set]

    fasminc=C:\fasm\INCLUDE

    или нет так вроде не пашет
     
  7. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Rohan

    > "как правильно задать в ini расположение include"



    [Environment]

    Fasminc=<путь к папке include>
     
  8. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    А не страдает ли размер и быстродействие от облилия подключаемых модулей?
     
  9. S_T_A_S_

    S_T_A_S_ New Member

    Публикаций:
    0
    Регистрация:
    27 окт 2003
    Сообщения:
    1.754
    Это зваисит от самих модулей.

    Если inc - то нет.



    >




    В мастдаях вписать в autoexec.bat



    set fasminc=C:\fasm\INCLUDE



    в NT - правая кнопка мыши на MyComputer -> Переменные Среды



    Вообще, fasm уже давно ищет файлы по пути прописанному в переменной окружения INCLUDE.

    FASMINC вроде как анахронизм
     
  10. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    И если несложно, то скажите где найти исходники самых простых прог на fasm? На wasm 95% на masm\tasm если есть на fasm то они пока сложноваты. А мне бы просто посмотреть и поанализировать чужой код. Только не говорите ищи в поисковике, искал но опять таки везде masm masm...
     
  11. Flint

    Flint New Member

    Публикаций:
    0
    Регистрация:
    3 фев 2005
    Сообщения:
    42
    Внесу и свою лепту, вообщем смысла под дос начинать писать особого нет. Я вот начинал с Радио 86рк, потом Spectrum, должен заметить что на спектруме самый лучший Ассемблер, поэтому советую начинать с него. Это конечно кажется сумашествием, но всех кодеры которых я знаю научились работать в Ассемблере на Спектруме.
     
  12. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    У меня спектрума нет.
     
  13. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Позволю себе не согласиться с мнением большинства. Скажем так, если человек собирается быть ПРИКЛАДНЫМ программистом, писать пользовательские программы под виндовс/икс, то дос ему, в общем, не нужен.

    Но если нужно хотя бы слегка разбираться в системном программировании, то начинать лучше с доса. Понять, что из себя представляют сегменты/дескрипторы, прерывания, порты ввода/вывода, чем отличается реальный режим от защищенного, там куда проще, т.к. в досе любая программа - сама себе драйвер, .com написать проще чем .sys, а зависший дос (нажать ctrl-alt-del) раздражает меньше, чем синий экран и ожидание загрузки виндоуз.
     
  14. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    Люди PLZ дайте мне ссылки на примеры прог под fasm а то в этом деле нужно анализировать!
     
  15. S_T_A_S_

    S_T_A_S_ New Member

    Публикаций:
    0
    Регистрация:
    27 окт 2003
    Сообщения:
    1.754
    google: Iczelion+fasm = http://sulaiman.thefreebizhost.com/ .....



    Ещё сходи на flatassembler.net - там есть раздел с примерами. так же много чего есть на тамошнем форуме.



    А Спектрум - бери мулятор UnrealSpeccy - и вперёд :)

    Это точно лучше чем ДОС :derisive:
     
  16. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    S_T_A_S_ Ну ты блин даешь, я искал и ничего токового не нашел, муть одна попадплась, несколько исхлдников с форумов содрал и все! Спасибо! Оказывается и еще и искать плохо умею :)

    Хотя я только по рунету искал, вседующий раз буду поумнее
     
  17. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    Посмотрел сколько кода под Windows надо - просто жуть! Скажите неужто все кто пишет под Windows так много кода вбивают вручную? или есть способ как то это дело упростить?
     
  18. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.552
    Адрес:
    Russia
    Да есть способ использовать шаблоны кода (как в RadAsm`e), но можно и вбивать все ручками, хотя, например, зачем каждый раз повторять регистацию гл окна... проще шаблон вставить, а потом тока добавлять к нему все что тебе нужно
     
  19. Rohan

    Rohan New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2004
    Сообщения:
    133
    Не подскажите где в RadAsm месторасположение fasm указать?
     
  20. SeDoY

    SeDoY New Member

    Публикаций:
    0
    Регистрация:
    14 дек 2003
    Сообщения:
    31
    Адрес:
    Russia
    Rohan



    Если тебе не нравятся окошки, но хочется программировать под Винду, работай с консолью. Кода совсем немного надо -пара апишек и программа работает :).