Компиляция в ассемблере

Discussion in 'Болталка' started by Tikson, 1 Feb 2006.

  1. Tikson

    Tikson Elder - Старейшина

    Joined:
    9 Oct 2005
    Messages:
    263
    Likes Received:
    42
    Reputations:
    14
    Вот допустим у меня есть определенный код, что мне надо сделать чтобы из него получить экзешник, я пользовался масмом 32 вставляю туда код жму кнопку компилировать а мне в ответ ошибка
    Недавно вышла прграмма которая совмещает в себе функции масма, насма и тд пробовал и сней но тоже ничего не вышло
    -----------
    Вобщем я спрашивал на разных кодерских сайтах, но мне ничего вразмительного не ответили....
    Помогите понять как происходит этот процес от написания кода до получения необходимого результата
    кодеры хелп!
     
  2. tclover

    tclover nobody

    Joined:
    13 Dec 2005
    Messages:
    741
    Likes Received:
    682
    Reputations:
    287
    Если тебе с самого начала - то тебе к калашникову http://www.kalashnikoff.ru/
    На www.wasm.ru есть много хороших хелпов по ассму. Удачи в изучении!
     
  3. Tikson

    Tikson Elder - Старейшина

    Joined:
    9 Oct 2005
    Messages:
    263
    Likes Received:
    42
    Reputations:
    14
    про www.wasm.ru я знал давно... а вот про калашникова я забыл, вернее я знал но не придал значения... дальше главной страницы не пошол, теперь посмотрел форум и faq )))
    ----------
    а какую литературу порекомендуете почитать (кроме питера абеля...=) )
    у меня вот есть книги Крупника и Рудольфа Марека, я их уже по раз наверно 20 перечитывал но чето все еще не вьехал с асму ((( .Там кстати в книге Крупника был описан процес компиляции(на мой взгляд коряво) уж больно непонятно... автор ссылался на то что одного файла может не быть для компиляции и описывал как его создать(тоже непонятно и запутанно это делал) Кстатти на обложке книги было написана цитата "Ассемблер - любимый язык хакеров" и вправду автор описыват ассемблер как оружие для создание вирусов имхо ))))) ... инетересный автор))))
    ----------------
    вобщем я нехочу вдаватся пока сильно в техническую сторону этого языка.... ну может кто знает всетаки как можно создать экзешник и опишет пару вариантов его создания ???
     
  4. tclover

    tclover nobody

    Joined:
    13 Dec 2005
    Messages:
    741
    Likes Received:
    682
    Reputations:
    287
    Программа-ассемблер (MASM, TASM, WASM, NASM и пр.) создает объектный файл с расширением OBJ. Данный файл является переходным между асемблерным файлом (.ASM) и программой (.COM / .EXE).
    Потом obj нужно отлинковать и получить либо com либо exe.
    Ассм в 2-х словах не бывает =) Прочитай хотя бы Калашникова. Он очень понятно обьясняет - а потом уже всё остальное.
     
  5. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    литература: Юров, Зубков + cracklab.ru, раздел "для на4инающих"
     
  6. exe0n

    exe0n New Member

    Joined:
    10 Jan 2006
    Messages:
    4
    Likes Received:
    2
    Reputations:
    0
    Оффффтоп :

    Билл Гейтс сказал что вазьмет на работу таво кто прочитает и поймет все 3 тома Кнута :)
     
  7. grinay

    grinay IQ- 137%

    Joined:
    15 Jun 2004
    Messages:
    409
    Likes Received:
    174
    Reputations:
    305
    Вот пример рабочий.
    Code:
    .586
    .model flat, stdcall
    option casemap :none
    
    include windows.inc
    include kernel32.inc
    include user32.inc
    includelib kernel32.lib
    includelib user32.lib
    
    .data
    capt db "Caption",0
    text db "Compilation error on line 8!",0
    
    .code
    
    start:
    invoke MessageBox,0, addr text, addr capt, MB_OK
    invoke ExitProcess,0
    end start
    
    Далее собираем все это в екзешник
    делаем бат файл для компиляции чтобы не писать все это в командную строку постоянно ручками

    E:\masm32\bin\ml /c /coff /I E:\masm32\include test.asm
    E:\masm32\bin\link /libpath:E:\masm32\lib /subsystem:windows test.obj
    pause
    И смотрим что выполнилось все без ошибок и мы получим исполняемый файл всего лиш выдаюших окно
    Api функцией MessageBox. Вот.:)
     
  8. Tikson

    Tikson Elder - Старейшина

    Joined:
    9 Oct 2005
    Messages:
    263
    Likes Received:
    42
    Reputations:
    14
    exe0n он это сказал если ШКОЛЬНИК прочтет и осмыслит 1 ту книгу то может смело слать резюме))))
    Рудольфа Марека вроде неплохо пишет
     
  9. tclover

    tclover nobody

    Joined:
    13 Dec 2005
    Messages:
    741
    Likes Received:
    682
    Reputations:
    287
    Дайте мне ссылку на Кнута плз. Что-т я найти сам не могу....
     
  10. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    ну у меня есть все 3 книги, только слать многовато - там имхо окло 250 метров в ПДФе...
     
  11. tclover

    tclover nobody

    Joined:
    13 Dec 2005
    Messages:
    741
    Likes Received:
    682
    Reputations:
    287
    2 ProTeuS А ссылки у тебя нету? Очень охота прочитать...
     
  12. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    ска4ать незнаю где. единственное 4ем могу помо4ь, так это моЖешь недорого заказать их здесь: http://www.opensource.com.ua/
     
  13. tloze

    tloze New Member

    Joined:
    14 Jan 2006
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Кнут есть например в файлообменных сетях

    первый том <a href="ed2k://|file|%D0%9A%D0%BD%D1%83%D1%82,_%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F,1.pdf|26953150|9B2BC9407BD98291340282088C376E21|/">Кнут,_Искусство_программирования,1.pdf</a>

    второй том <a href="ed2k://|file|%D0%9A%D0%BD%D1%83%D1%82,_%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F,2.pdf|66689271|90ABBB1AE9EE518806C34AB050F8FFC6|/">Кнут,_Искусство_программирования,2.pdf</a>

    третий том <a href="ed2k://|file|%D0%9A%D0%BD%D1%83%D1%82,_%D0%98%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F,3.pdf|3820584|25D515D8F1226F44732625853D921F29|/">Кнут,_Искусство_программирования,3.pdf</a>

    чтоб скачать надо установить клиент (например Emule v0.46c), и разобраться там с настройками, но качать будет долга


    думаю можно найти и так если очень надо, название книг
    "Дональд Кнут Искусство програмирования Том 1,2,3"

    тока он был вроде больше математиком ,чем програмистом и книги его об всяких алгоритмах типа сартировки массивов и поиски элементов, поэтому это не учебники по програмированию
     
  14. tloze

    tloze New Member

    Joined:
    14 Jan 2006
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    нащет изначального вопроса то надо глянуть исходник, просто есть разные компиляторы с языка ассемблер и синтаксис у них различается поетому исходники написаные для одного компиляторы при поптки собрать их други будут выдавать одни сплошные шибки