Среда, 26.07.2017, 01:49 Приветствую вас Гость | Группа "Гости" 


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: Marra_Kesh, xXxSh@dowxXx 
delfcode » Обсуждения » Свободное общение » Хочу научиться программированию на Assembler'e
Хочу научиться программированию на Assembler'e
sk0rpi0nДата: Понедельник, 12.03.2012, 19:50 | Сообщение # 1
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Привет всем! Я давно уже собираюсь разобраться с ассемблером, но, честно говоря, не знаю с чего начать. Тута ведь нужно знать не только сам ассемблер, но ещё и про адреса памяти и всё такое... Не могли бы посоветовать какие-нибудь учебники или уроки по самому Assembler'у и тому, что нужно знать, чтобы кодить на нём?

C++ - попса :D

Сообщение отредактировал sk0rpi0n - Понедельник, 12.03.2012, 19:50
 
xXxSh@dowxXxДата: Понедельник, 12.03.2012, 20:43 | Сообщение # 2
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Такая же борода, то же хотелось бы получше изучить ассемблер..., я например пробовал начинать с Fasm и Masm32, как считаете какой из них более перспективен в возможностях, и какой лучше в обучении?

или быть может лучше было бы взять другой..?


Сообщение отредактировал xXxSh@dowxXx - Понедельник, 12.03.2012, 20:44
 
link993Дата: Понедельник, 12.03.2012, 21:20 | Сообщение # 3
Участник
Зарегистрирован: 13.02.2011
Группа: Пользователи
Сообщений: 93
Статус: Offline
Посмотри в исходниках бэкдоров biggrin А так советую java учить. Если хочешь могу дать учебник нормальный и рассказать что по чем smile
 
sk0rpi0nДата: Понедельник, 12.03.2012, 21:58 | Сообщение # 4
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote
А так советую java учить

Java javой, но я сейчас хочу ассемблер. Ибо java я уже юзал, когда модифицировал Minecraft, но там она, думаю, несколько отличается от обычной. Если буду учить java, то позже, она мне может пригодиться, если я буду устраиваться на работу, а я пока не собираюсь. Так что в данный момент мне нужен Assembler, хочу немного побольше понять устройство компьютера... biggrin Ну, разумеется, не только это. happy


C++ - попса :D

Сообщение отредактировал sk0rpi0n - Понедельник, 12.03.2012, 22:03
 
Волк-1024Дата: Понедельник, 12.03.2012, 22:43 | Сообщение # 5
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Для начала определитесь, что такое вообще ассемблер. Т.к это фактически не язык, а набор мнемонических команд для процессора. Лучше использовать MASM или TASM т.к у FASM'а дерьмо синтаксис (С моей точки зрения), а еще лучше 16 битный TASM это самый мёд для понимания азов асма. Перспектива одинакова у MASM'а и FASM'а. MASM будет жить, пока жив Мелко$офт. Но на FASM’е, например можно писать еще и под пингвина.

P.S Чем смогу помогу biggrin


Pascal, C\C++, Assembler, Python

Сообщение отредактировал Волк-1024 - Понедельник, 12.03.2012, 22:48
 
NeoДата: Вторник, 13.03.2012, 06:33 | Сообщение # 6
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 316
Статус: Offline
Лучше возьми задачник по программированию и начинай прорешивать задачки.Это самый лучший способ выучить язык.
Эффект почувствуешь где-то на 50ой решённой задачи.Пиши на tasm или nasm.Но лучше на tasm.Masm пока не советую,хоть он тебе легко дастся(ты будешь использовать макросы и в основном api функции,которые ты и так уже используешь),по причине того,что сначала нужно писать под дос,хоть это иногда и скучно.


Сообщение отредактировал Neo - Вторник, 13.03.2012, 06:39
 
sk0rpi0nДата: Вторник, 13.03.2012, 09:25 | Сообщение # 7
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote
Для начала определитесь, что такое вообще ассемблер.

Вот это я и хочу узнать. Хочу узнать, что он собой представляет, как работает и в общем всё о нём. А затем уже только программировать начинать.
Quote
Лучше возьми задачник по программированию и начинай прорешивать задачки.Это самый лучший способ выучить язык.

Знаю, Delphi так и учил, но асм не стал бы, наверное, не додумался бы biggrin . Спасибо за совет.
Quote
Пиши на tasm

Ок, раз все говорят в его пользу, то так и сделаю. smile

Ну и самое главное:
Какая именно версия tasm мне нужна и как вообще его устанавливать? (а то я скачал tasm 5.0, а как устанавливать или запускать что-то не врублюсь).

UPD: Короче я установил, нашёл в инете стандартый hello word, ассемблировал его, а компоновку не проходит файлик hello.obj. В Bat файл пишу "TLINK HELLO", при запуске выдаёт "No program entry point". Как решить?


C++ - попса :D

Сообщение отредактировал sk0rpi0n - Вторник, 13.03.2012, 14:11
 
Волк-1024Дата: Вторник, 13.03.2012, 14:37 | Сообщение # 8
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Последняя версия TASM 5.3. Датирована она 2000 годом.

Скинь исходник или hello.obj


Pascal, C\C++, Assembler, Python
 
sk0rpi0nДата: Вторник, 13.03.2012, 14:40 | Сообщение # 9
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote

Скинь исходник или hello.obj

Да я уже разобрался. Надо было дописать start и END start.
Окей. Теперь мне бы какой-нибудь справочник по assembler, на русском и толковый. Без растекания мыслью по древу, но чтобы всё основное было. Буду премного благодарен за "подгон" такого справочника. biggrin


C++ - попса :D
 
Волк-1024Дата: Вторник, 13.03.2012, 14:41 | Сообщение # 10
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Ща порыскую на компе вроде что-то было.

Pascal, C\C++, Assembler, Python
 
Волк-1024Дата: Вторник, 13.03.2012, 14:51 | Сообщение # 11
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Вот тут накидал пару хелпов. И TASM 5.3. + Пересобранна библиотека Импорта.
Прикрепления: Help.rar(1252Kb)


Pascal, C\C++, Assembler, Python

Сообщение отредактировал Волк-1024 - Вторник, 13.03.2012, 14:52
 
Marra_KeshДата: Вторник, 13.03.2012, 15:29 | Сообщение # 12
Постоянный
Зарегистрирован: 19.12.2009
Группа: Модераторы
Сообщений: 182
Статус: Offline
Лирика: Я использую FASM...

Заведующий палатой #6
 
XSPYДата: Вторник, 13.03.2012, 17:00 | Сообщение # 13
Продвинутый
Зарегистрирован: 28.01.2010
Группа: Пользователи
Сообщений: 258
Статус: Offline
Определитесь,под что кодить будете!
Если под форточки,то Masm,если кроссплатформ,то FASM или TASM.
у FASMa очень самый сильный макроязык из всех перечисленных выше,красивый синтаксис (тут просто зависит от того,как кто кодит),но очень мало возможностей для отладки(( ну и хелпа на русском немного (но это временно).
MASM-куча примеров,DDK,src и прочего говна)) biggrin
TASM-Dead Ner' Zool... biggrin
А по сути,неважно какой учить-синтаксис то выучить за дня 3 максимум.
Тут нужно понимание!Щелчек,так сказать...
Я вот по своему опыту скажу: года полтора учил асм как фанатик,но ничего больше Hello World'a не выходило,так как книги и примеры они есть,а понимания нету.
И вот полгода назад произошел "щелчок"-понимание пришло само,и в универе делал лабы на заказ.
Поэтому не спеши,читай,пробуй кодить,и возможно понимание придет быстрее...чем мне,к сожалению((


Я не крекер,а программист!
Я не преступник-я свободный человек!
Лучше один раз накодить,чем сто раз качать билды!
 
sk0rpi0nДата: Вторник, 13.03.2012, 18:10 | Сообщение # 14
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote
вот по своему опыту скажу: года полтора учил асм как фанатик,но ничего больше Hello World'a не выходило,так как книги и примеры они есть,а понимания нету.

Да, это я уже понял...
Quote
TASM-Dead Ner' Zool... biggrin

Выбрал его.

По сути, я вот сегодня с ним пое... Ну, прочитал много всякого... В общем, решил сначала покодить на DOS-версии, т.к. не нужно мудохаться со всеми окнами. Но вот в чём проблема: в туторах, что скинул мне Волк-1024, больше теории, чем практики... Вот теорию я почитал, а практиковаться не особо получается. Во-первых, в тех туторах не под TASM программы, или я не знаю почему, но не особо они у меня хотят работать... В общем, хочу практический учебник на DOS версию TASM, чтобы поменьше теории, т.к. я её уже сегодня начитался, а в инете не найду ничего... sad


C++ - попса :D

Сообщение отредактировал sk0rpi0n - Вторник, 13.03.2012, 18:11
 
Волк-1024Дата: Вторник, 13.03.2012, 20:28 | Сообщение # 15
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Quote
Выбрал его.
Я сначала выбрал FASM, но уже через неделю слез с него и забил из-за его синтаксиса. Хотя это при том, что он был моим первым ассемблером. Потом решил попробовать TASM и MASM и понравилось! Ну и пох на то, что последний раз TASM обновлялся более 10 лет назад. smile Зато почти все ТруЪ вирусы и трои, написаны на тасме и пишутся до сих пор. + Тасм имеет режим почти 99% совместимости кода с MASM'ом. В отличие от других асмов.

Quote
если кроссплатформ,то FASM или TASM.

O_o Turbo Assebler от Borland кроссплатформенный???!!!

Quote
чтобы поменьше теории


Это анриал. Под Досом еще больше будет теории. Например, различие Защищенного режима от Реального. И т.д


Pascal, C\C++, Assembler, Python

Сообщение отредактировал Волк-1024 - Среда, 14.03.2012, 17:17
 
xXxSh@dowxXxДата: Вторник, 13.03.2012, 23:04 | Сообщение # 16
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Quote (XSPY)
Тут нужно понимание!Щелчек,так сказать...
Я вот по своему опыту скажу: года полтора учил асм как фанатик,но ничего больше Hello World'a не выходило,так как книги и примеры они есть,а понимания нету.
И вот полгода назад произошел "щелчок"-понимание пришло само...


у меня и с делфи так же было, просто по началу тяжело шло, потом чем больше я обращался к тому коду который до этого не понял, тем больше озарения мне приходило biggrin

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


Сообщение отредактировал xXxSh@dowxXx - Вторник, 13.03.2012, 23:07
 
sk0rpi0nДата: Среда, 14.03.2012, 11:29 | Сообщение # 17
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote
Это анриал. Под Досом еще больше будет теории. Например, различие Защищенного от Реального. И т.д

Ну теорию я прочту до конца, допустим... Мне нужны конкретные примеры. Вывод суммы, разности, произведения A и B, нахождение большего из двух чисел, и прочее. Мне так будет понятнее. smile


C++ - попса :D
 
Marra_KeshДата: Среда, 14.03.2012, 18:12 | Сообщение # 18
Постоянный
Зарегистрирован: 19.12.2009
Группа: Модераторы
Сообщений: 182
Статус: Offline
Лирика: "Два высших" дают о себе знать biggrin
sk0rpi0n, http://www.wasm.ru/ Вам в "лЮкошко"


Заведующий палатой #6
 
Волк-1024Дата: Среда, 14.03.2012, 19:21 | Сообщение # 19
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 467
Статус: Offline
Quote
Лирика: "Два высших" дают о себе знать

Как обычно я ничего не понял... biggrin

Quote
Вывод суммы, разности, произведения A и B, нахождение большего из двух чисел, и прочее.

Code

Сумма:

MOV EAX, 10
MOV ECX, 5
ADD EAX, ECX ; eax будет равен 15      

Разность:

MOV EAX, 10
MOV ECX, 5
SUB EAX, ECX; eax будет равен 5

Произведения:

MOV EAX, 5 ; A
MOV ECX, 2 ; B
MUL EAX, ECX ; eax = 10

и т.д


P.S Код 32 битный. Для 16 битных программ использовать соответсвенно AX, CX и т.д


Pascal, C\C++, Assembler, Python

Сообщение отредактировал Волк-1024 - Среда, 14.03.2012, 20:46
 
sk0rpi0nДата: Четверг, 15.03.2012, 09:47 | Сообщение # 20
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Quote
P.S Код 32 битный. Для 16 битных программ использовать соответсвенно AX, CX и т.д

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


C++ - попса :D
 
Marra_KeshДата: Суббота, 17.03.2012, 16:34 | Сообщение # 21
Постоянный
Зарегистрирован: 19.12.2009
Группа: Модераторы
Сообщений: 182
Статус: Offline
sk0rpi0n,

Источник: GOOGLE
Прикрепления: 5171849.jpg(12Kb) · 4823676.jpg(6Kb)


Заведующий палатой #6
 
sk0rpi0nДата: Суббота, 17.03.2012, 21:32 | Сообщение # 22
Участник
Зарегистрирован: 28.05.2011
Группа: Пользователи
Сообщений: 65
Статус: Offline
Oo, и это только сумма двух чисел... ППц biggrin
Спасибо. smile


C++ - попса :D
 
link993Дата: Суббота, 17.03.2012, 21:49 | Сообщение # 23
Участник
Зарегистрирован: 13.02.2011
Группа: Пользователи
Сообщений: 93
Статус: Offline
Зато если калькулятор на чистом asm напишешь будет очень круто:D Быстродействие 100% обеспечено!
 
delfcode » Обсуждения » Свободное общение » Хочу научиться программированию на Assembler'e
Страница 1 из 11
Поиск:

delfcode.ru © 2008 - 2017 Хостинг от uCoz