@acuruma

Как учить язык ассемблера NASM?

Мне надоело постоянно задавать вопросы по языку ассемблера на этом сайте. Видимо тот курс, который я нашел в интернете не совсем хороший, так как возникает много вопросов к тому, что там пишут. Можете посоветовать, каким способом, при помощи каких ресурсов можно нормально выучить ассемблер (включая теорию о процессоре, памяти и т.д), являются ли книги достойным вариантом (насчет этого видел много споров, одни говорят, что по книгам лучше не учиться, а другие - наоборот, но ни одного нормального ответа на этот вопрос не видел)?
  • Вопрос задан
  • 299 просмотров
Решения вопроса 1
mayton2019
@mayton2019
Bigdata Engineer
Тяжелую ты тему поднял. Я за последние лет 10 вообще не слышал чтобы кто-то учился и сертифицировался на знания ассемблера. Обычно эти знания идут прицепом к языку "C" и разработке компилляторов. Поэтому по частным случаям можно наверное спрашивать сишников. Они - ближе к теме.

Был когда-то неплохой ресурс wasm. Там много статей было. Но чего-то щас его не найти.

Я последний раз учил ассемблер по книжке Питера Абеля (MS-DOS :)) И я тогда учился в техникуме. По жизни вобщем не особо пригодилось.

По поводу asm, tasm, fasm... Они все одинаковы. Можешь учить с любого. Потом переход будет прозрачный. Единственно... у одного из низ операнды идут в обратной нотации. Ну типа не слева направо а справа налево.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@0xc1e7a
Да тут всё просто на самом деле. Хочешь простого наколеночного программирования учи мейнстрим: питон, джава, джаваскрипт, го и прочее. Ассемблер и вся низкоуровщина зачастую завязана на спеки, которые сухие и на английском, если не готов читать много такой литературы то и не лезь - с туториалами из интернетов дальше хелло вордов не уедешь всё равно. Ну а если готов, так бери интеловские мануалы по их процам и читай, делай заметки для себя на русском, там есть целые куски где чисто справочная информация, отмечаешь для себя куда будешь подсматривать в будущем и пропускаешь большую часть (но не всю) этой справочной информации, вообще эти маны легко читаются если база есть и если не тупо по порядку читать, а включать мозги.

Вот ссылка, только она не работает из-за СВО, юзай впн: https://www.intel.com/content/www/us/en/developer/...

P.S. Чтобы не быть голословным я както захотел заработать денег на векторной реализации chacha20 для power процев (https://app.bountysource.com/issues/88058118-freeb...). Никаких туторов с разжованой инфой особо не было и пришлось читать оффициальные доки по их ассемблеру типо таких как у интела ну и в результате написал свою реализацию (немного подсмотрев в openssl) и даже встроил её в библиотеку nss (для этого уже правда навыки сишника нужны, и ещё в их сборочной системе разбираться пришлось). Моззиловцы долго не хотели принемать патч, но ибмовцы надавили на них и они приняли через год, а я заработал на этом 200к деревянных, копейки по сравнению с проделанной работой и временем, а всё равно приятно. https://bugzilla.mozilla.org/show_bug.cgi?id=1613235
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы