LINUX.ORG.RU

Изучение ассемблера используя linux


5

4

Всем доброго времени суток! Решился попробовать что такое ассемблер но сталкнулся с такой проблемой что все книги которые находи заточены под MASM/TASM и под ОС MS-DOS И Windows. Существует ли адекватная русская литература по ассемблеру либо заточенная под пользователей linux ? или все таки стоит ставить на в виртуалку винду и штудировать на винде ассемблер ?


Ставь эмулятор какого-нибудь микропроцессора и играйся с ним.

mv ★★★★★
()
Ответ на: комментарий от fads

вариации синтаксиса

Т.е. мелкомягкие даже ассемблер свой придумали?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от mm3

там только одна глава про Unix-like OS. От себя рекомендую: П.Нортон «Программно-аппаратная организация компьютера IBM PС» П.Абель «Ассемблер и программирование для IBM PC» но нужно быть готовым, что там DOS на виртуалку я бы не ставил его, я бы лучше на нормальном реальном железе. Но это дело вкуса

После этого - Зубков. Дальше - гуглить статьи и читать исходники. как-то так что ли

Nicholass ★★★
()
Ответ на: комментарий от Nicholass

За чем дос на виртуалу когда есть dosbox? а в зубкове ровно две нужные главы: команды процессора и собственно прикладной кодинг под unix, а большего и не нужно

mm3 ★★★
()
Ответ на: комментарий от mm3

я в досбоксе испытывал проблемы с DEBUG (уже толком не помню, но нормальной отладки не получилось).

А ведь DEBUG, это сила и понимать и уметь его надо, ящитаю.

Nicholass ★★★
()
Ответ на: комментарий от Eddy_Em

Да ладно, в таком случае лучше сразу писать на Сях.

Какой смысл учить АСМ, если org 100h в COM-ах это пустой звук? Кстати, про компиляторы - они-то и зависят от ОС, а каждый компилятор тащит за собой свои макросредства. Или макросы «не нужны»? :)

Nicholass ★★★
()
Ответ на: комментарий от nokachi

пускай под х86 человек освоит азы. Если нет понимания «низменных» принципов работы процессора, то будет тяжеловато. А про х86 все же хорошей литературы больше (выше приводил Нортона и Абеля, они, кажется, и зайцу могут объяснить общие принципы)

Потом уже можно будет вдаваться в отклонения^W другие архитектуры, там уже по желанию.

Nicholass ★★★
()

asm под *nix всё равно, что шубу в трусы запихивать. если хочется hardcore, прикупи какойнибудь atmega за копейку, но и там C выигрывает.

beastie ★★★★★
()
Ответ на: комментарий от Nicholass

наоборот, у мипса набор инструкций проще, соответственно проще ассемблер. А хороших простых туториалов (для начала) полно на сайтах американских универов.

nokachi
()
Ответ на: комментарий от Nicholass

все же рекомендую начать освоение АСМа из-под ДОСа

а вот этого лучше не недо. i386 — это ещё тот Костыль! (да, с большой буквы) всё равно, что рекомендовать освоение программирования с BASIC'а — только мозги колечить. пусть лучше православный MIPS штудирует. (см. мой пост выше)

beastie ★★★★★
()
Последнее исправление: beastie (всего исправлений: 1)
Ответ на: комментарий от beastie

хотя бы читать его надо уметь — а то потом программист на питоне не знает что такое стэк фрейм и что такое регистры

nokachi
()
Ответ на: комментарий от nokachi

читать — да, но вот писать — под вопросом.

beastie ★★★★★
()
Ответ на: комментарий от mrGima

Да туговато придется с ассмблером =)

С тобой всем туговато придётся

anonymous
()
Ответ на: комментарий от nokachi

а то потом программист на питоне

программист на питоне

программист

/0

anonymous
()

В.И. Юров «Assembler». Асм вплоть до pentium 4. Архитектура и программирование сопроцессора. Система команд процессора IA-32.

mhogolikii
()

Используй KolibriOS. Что может быть лучше для изучения ассемблера, чем ассемблерная ось? Там и множество программ-примеров есть, и библиотеки, и драйверы. В qemu грузится за пару секунд с образа.

d ★★★★
()

Nasm или Gas в руки и вперёд, маны в гугле есть. Последний я бы таки взял просто потому что возможность интеграции в код на C и плюсах есть из коробки.

cattail
()
Ответ на: комментарий от beastie

i386 — это ещё тот Костыль!

не думаю, что ТС дойдет до изучения премудростей. Выучит регистры, стек, даже до ММХ не дойдет и все же i386 самая распространенная архитектура, а вот MIPS ASM может и не пригодиться :)

Nicholass ★★★
()

адекватная русская литература

Адекватная чему?

unlog1c ★★★
()

тролльская неделя в development: «Как изучать ассебмлер убунты, я слышал, он быстрее си».

vvff
()

dos emulator, nasm? :D

invy ★★★★★
()

все книги которые находи заточены под MASM/TASM

Меня это какбе не остановило в своё время. Или понять различия синтаксиса это выше твоих сил?

anonymous
()
Ответ на: комментарий от anonymous

так и знал, что это напишут.

Но мого ли кто пишет под ARM на ASM?

Nicholass ★★★
()
Ответ на: комментарий от mm3

Добавлю ещё: В.Н. Пильщиков «Программирование на языке ассемблера IBM PC» - чёткое изложение, небольшой объём, есть упражнения. Хоть там и описан x86 ассемблер, но она закладывает основные подходы программирования на ассемблере, после неё освоить другой ассемблер не составит труда.

x-signal ★★
()

С асмом под линакс туго, по крайней мере, не так удобно, как под оффтопиком, но жить всё же можно.
Выкидывай древние nasm и gas, есть прогрессивный fasm.
Забей на всю бумажную литературу, не припомню ни одной толковой книги.
И добро пожаловать сюда: http://wasm.ru/publist.php

mix_mix ★★★★★
()
Ответ на: комментарий от Eddy_Em

Нужны-то они нужны, но это «опасное оружие в неумелых руках». Я бы за некоторые «макросы» их авторам отрывал бы яйца без наркоза. Но правда я такие «макросы» встречал довольно-таки давно, когда пришлось разгребать некоторый legacy-код.

По теме:

Особого смысла изучать ассемблер специально не вижу. Хотя самому пришлось. Одновременно с С.

DeVliegendeHollander ★★
()

Пиши под bios, загрузочный сектор, в литературе по msdos есть описание вызовов. Тестить можно в bochs например. Ассемблер есть, не помню как называется, им в старых версиях ядра собирали стартовый код, as86 или как-то так.

amaora ★★
()
Ответ на: комментарий от x4DA

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

x4DA ★★★★★
()
Ответ на: комментарий от DeVliegendeHollander

Я бы за некоторые «макросы» их авторам отрывал бы яйца без наркоза.

Бывает. Сам такое видел, что и с поллитрой не разберешься…

Eddy_Em ☆☆☆☆☆
()

если автору топика вообще все равно какой ассемблер, то опять же рекомендую AVR 8-битные, простой ассемблер чтобы понять что оно и как

хотя я бы писал на Си и делал асемблерные вставки, смотрел бы objdump и т.д.

I-Love-Microsoft ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.