Assembler (для самых начинающих)
Модератор: Модераторы разделов
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Assembler
Всем привет!
Вот решил начать изучать асм, но столкнулся с проблемой нехватки литературы. Скачал несколько книг, но они то для DOS/Windows, то не для новичков...
Я в асме совсем зеленый, поэтому не знаю даже с чего начать, куда копать... Думаю nasm... (если я не ошибаюсь, синтаксис там не AT&T)
Посоветуйте пожалуйста книги, по которым Вы, уважаемые сетяне, сами учились и считаете хорошими.
З.Ы.
Поиск дал только вот это, но я все же решил спросить еще раз...
Вот решил начать изучать асм, но столкнулся с проблемой нехватки литературы. Скачал несколько книг, но они то для DOS/Windows, то не для новичков...
Я в асме совсем зеленый, поэтому не знаю даже с чего начать, куда копать... Думаю nasm... (если я не ошибаюсь, синтаксис там не AT&T)
Посоветуйте пожалуйста книги, по которым Вы, уважаемые сетяне, сами учились и считаете хорошими.
З.Ы.
Поиск дал только вот это, но я все же решил спросить еще раз...
FreaxNet «Shut up and hack!»
-
wzrd
- Сообщения: 323
- ОС: Debian Lenny
Re: Assembler
У меня вот эта в бумажном виде. До юникса еще не дочитал, но там есть описание синтаксиса AT&T.
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Ну и как? Хорошая книга? У меня она в эл. виде есть, но, если не ошибаюсь, там почти все на masmе... (одна глава просто рассказывает про AT&T синтаксис) Этот синтаксис понимает nasm? Я вообще-то ищу что-нибудь крупное, и чтобы с самого начала для самых начинающих, и на NASMе
FreaxNet «Shut up and hack!»
-
Alxn1
- Сообщения: 402
- Статус: Красноглазик со стажем
- ОС: Mavericks
Re: Assembler
nasm понимает обычный Intel-овский синтаксис, AT&T вам при работе с ним не понадобится (его gas использует).
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Ну AT&T синтаксис меня пока не интересует. Я хочу изучать NASM. MASM имеет немножко иной синтаксис?
FreaxNet «Shut up and hack!»
-
wzrd
- Сообщения: 323
- ОС: Debian Lenny
Re: Assembler
entry писал(а): ↑28.02.2008 21:44Ну и как? Хорошая книга? У меня она в эл. виде есть, но, если не ошибаюсь, там почти все на masmе... (одна глава просто рассказывает про AT&T синтаксис) Этот синтаксис понимает nasm? Я вообще-то ищу что-нибудь крупное, и чтобы с самого начала для самых начинающих, и на NASMеЕсть такое вообще?
Всё начинается с введения в системы счисления, биты, сегменты... а потом уже сам асм. Я думаю что для новичка она вполне подойдет. Единственное что можно посоветовать, это почитать побольше о работе процессора, в частности о режимах, после прочтения первой главы. Ну это конечно моё мнение.
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
wzrd писал(а): ↑28.02.2008 22:04Всё начинается с введения в системы счисления, биты, сегменты... а потом уже сам асм. Я думаю что для новичка она вполне подойдет. Единственное что можно посоветовать, это почитать побольше о работе процессора, в частности о режимах, после прочтения первой главы. Ну это конечно моё мнение.
Так значит примеры из этой книги в NASMе будут работать, да? Тогда надо будет распечатать
FreaxNet «Shut up and hack!»
-
_beast
- Сообщения: 77
- ОС: linux 2.6
Re: Assembler
wasm.ru просто кладезь ценной информации по асму...
-
wzrd
- Сообщения: 323
- ОС: Debian Lenny
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Ресурс ориентирован в основном на Win32 кодеров. (MASM/TASM, DOS/Windows) +аппаратный уровень/работа с устройствами...
все что я смог там найти - это пару статей (для Linux/UNIX) и руководство по NASM
Так Вы программируете в Windows на MASMe?
FreaxNet «Shut up and hack!»
-
wzrd
- Сообщения: 323
- ОС: Debian Lenny
Re: Assembler
Да нет, у меня вообще виндовса нет и я не программирую на асме. На асме имхо можно писать только драйверы или что нибудь плохое, а знаний такого уровня у меня нет, Асм мне нужен только для разбора простых листингов. Советую вам почитать это.
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Из этой "хакерской" статьи я понял, что МАSM и NASM не полностью совместимы, хотя NASM имеет "MASM-подобный синтаксис". Так и не понял про YASM: кто-нибудь кто знает может мне объяснить, синтаксис MASMа будет понимать YASM? Если я возьму книжку по MASMу и буду по ней учиться, смогу ли я компилировать свои программы на YASMе (или хоть на чем-нибудь)?
З.Ы. Под Linux/UNIX есть ассемблер, код которого будет работать в Windows?
З.Ы.Ы. Вообще ассемблер собираюсь учить для себя ради интереса. Просто хочется, как говориться, "двух зайцев...": учить и для Linux/UNIX и для форточек.
Ставнение NASM и GAS
FreaxNet «Shut up and hack!»
-
Kondrat
- Сообщения: 223
- ОС: И снова Федора
Re: Assembler
З.Ы. Под Linux/UNIX есть ассемблер, код которого будет работать в Windows?
А что вы понимаете под этим? Если вопрос в том, сможет ли NASM собрать виндовую программу, то да. Если же вы хотите написать кроссплатформенный код, то это вряд ли, потому как разные системные вызовы, различные механизмы создания окон и т.д.
Ёж - птица гордая: пока не пнёшь, не полетит.
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Kondrat писал(а): ↑29.02.2008 15:44З.Ы. Под Linux/UNIX есть ассемблер, код которого будет работать в Windows?
А что вы понимаете под этим? Если вопрос в том, сможет ли NASM собрать виндовую программу, то да. Если же вы хотите написать кроссплатформенный код, то это вряд ли, потому как разные системные вызовы, различные механизмы создания окон и т.д.
Нет нет, я имею ввиду синтаксис. Номера прерываний системных вызовов Linux я смогу найти и в самой Linuх
Меня в данный момент интересует отличия NASM(или YASM) и MASM синтаксиса. Ах да, и не забываем, что речь-то наша вообще-то начиналась с книги, по которой можно ассемблер для никсов учить (NASM(или YASM)).
FreaxNet «Shut up and hack!»
-
pas
- Сообщения: 597
- Статус: маньяк
- ОС: Gentoo
Re: Assembler
fasm. Есть сборки под Линукс и Винду. С масмом синтаксис не совместим без правки. Мощная система макросов, которая позволяет понимать синтаксис МАСМа, но сам я эту фишку (совместимость с МАСМом) не использовал, потому и написал, что без правки не совместим.
Писать пользовательские проги со всякими ГУИми (под винду во всяком случае) на асме не намного сложней чем на С, может даже и проще.
В принципе, при помощи макросов fasm-а наверно можно написать и кросплатформенную прогу.
Писать пользовательские проги со всякими ГУИми (под винду во всяком случае) на асме не намного сложней чем на С, может даже и проще.
В принципе, при помощи макросов fasm-а наверно можно написать и кросплатформенную прогу.
-
entry
- Сообщения: 108
- ОС: открытая и свободная
Re: Assembler
Всем начинающим советую книгу "Ассемблер на примерах. Базовый курс" Рудольф Марек. Маленькая книжонка в мягком переплете, которая на Невском будет стоить не более 200р. Материал изложен последовательно и достаточно кратко (240 стр). Конечно потом придется покупать следующую книжку по асму, но первый шаг советую сделать именно с нее.
Звучит заманчиво. Есть ли такая книга, по которой можно учить fasm и все вкусности, которые свойственны только ему?
pas писал(а): ↑04.03.2008 05:25fasm. Есть сборки под Линукс и Винду. С масмом синтаксис не совместим без правки. Мощная система макросов, которая позволяет понимать синтаксис МАСМа, но сам я эту фишку (совместимость с МАСМом) не использовал, потому и написал, что без правки не совместим.
Писать пользовательские проги со всякими ГУИми (под винду во всяком случае) на асме не намного сложней чем на С, может даже и проще.
В принципе, при помощи макросов fasm-а наверно можно написать и кросплатформенную прогу.
Звучит заманчиво. Есть ли такая книга, по которой можно учить fasm и все вкусности, которые свойственны только ему?
FreaxNet «Shut up and hack!»
-
pas
- Сообщения: 597
- Статус: маньяк
- ОС: Gentoo
Re: Assembler
На сайте http://www.flatassembler.net/ есть туториалы и описание на него. На wasm.ru кажется есть пара статей по нему и много топиков по макросам. Плюс много примеров, по которым можно разобраться.
Печатной книги по нему кажется не написано.
PS: при помощи макросов fasm у меня получилось реализовать некое подобие класса списка чекбоксов, но под винду. Под лин я на асме еще не писал.
PSPS: извините не сразу увидел название подфорума.
Печатной книги по нему кажется не написано.
PS: при помощи макросов fasm у меня получилось реализовать некое подобие класса списка чекбоксов, но под винду. Под лин я на асме еще не писал.
PSPS: извините не сразу увидел название подфорума.