Ассемблер: свежий взгляд. Что думают об этом профессионалы?
Xakep, номер #045, стр. 045-026-5 - Вообще-то я хочу сделать важное замечание. Если программист знает такой язык, как ассемблер, это говорит о том, что это чертовски хороший профессионал, так как ассемблер требует недюжинного мастерства. Цена всех затраченных усилий окупится в будущем, когда появятся новые процессоры (их наше поколение уже не увидит). Тогда понадобятся очень умные кодеры, чтобы работать с ними. Многие избрали легкий путь и пишут на Visual Basic, Java и т.п., но как только поменяется операционная система и улучшится железо, многие из этих языков бесследно исчезнут. Когда вы пытаетесь изучить C или ассемблер, то приобретаете полезные навыки, которыми будете пользоваться в течение всей своей жизни, в отличие от тех людей, которые, избрав легкий путь, окажутся не у дел в будущем. Чтобы доказать свою точку зрения, расскажу анекдот (мне его поведал знакомый из Лос-Анджелеса). Что скажет программист на C, встретив программиста на ADA? - Я буду бифштекс с луком ;). Для танкистов поясняю анекдот: ADA это язык программирования, который когда-то был очень популярен. А потом вдруг - раз и исчез. Просто компьютеры поменялись, железо улучшилось, ОС новая... В общем, остались ADA-кодеры без зарплаты - вот и работают теперь официантами в закусочной, куда и зашел поесть программист на С. В общем, всю мысль Стива можно резюмировать очень просто: изучая ассемблер, ты кладешь свои знания в банк. С солидным процентом. То есть не прогадаешь. А вот о том, как его изучать, что и где брать, мы поговорим далее. Внимание! По ходу статьи хочу обратить твое внимание на несколько фактов. Во-первых, все интервью, опубликованные в этой статье, являются полным эксклюзивом, мы сами беседовали с каждым, а потом переводили все это на русский. Так что в правдивости можешь не сомневаться. Во-вторых, далее по тексту мы будем тебе рекомендовать кучу всяких сайтов, справочников, книг... Уже в начале статьи была фраза "...высказывание С.В. Зубкова (автора самой лучшей в России книги по ассемблеру)...". Так вот, это - не реклама. Всюду, где что-то будем называться лучшим, это и есть то самое "the best в натуре". Компилятор - всему голова Сейчас мы тебя, словно маленького мальчика, проведем по магазину и подберем штанишки, майку, кепку, кроссовки... Только в компьютерном смысле этих слов. Итак, куда ни сунься, а без компилятора ты в любом случае не обойдешься. Какой выбрать? А ведь их немало! Так что давай разбираться по порядку. Все зависит от того, под какую ОС ты будешь писать. Варианта может быть два: Win и Unix. Если ты работаешь еще в DOS - то тебе надо скачать TASM (Turbo Assembler от Borland), скопить деньги на ноутбук и отправиться в психушку. Ибо DOS - мертва, значит ты некрофил, а им место только в белых стенах. Что там у нас осталось? Ага, Win и Unix. Начнем мы, пожалуй, с Unix. Честно говоря, конкуренция среди компиляторов здесь есть и немалая. Однако впереди планеты всей идет пакет под названием NASM (NetWide Assembler). Что это за девочка и где она живет? NASM - это 80x86 ассемблер. Он поддерживает широкий диапазон форматов объектных файлов, включая форматы Linux a.out и ELF, NetBSD/FreeBSD, COFF, Microsoft 16-bit OBJ и Win32. NASM также способен создавать простые бинарные файлы. Синтаксис NASM максимально упрощен для понимания и похож на синтаксис Intel, но слегка посложнее. Он поддерживает инструкции Pentium, P6 и MMX, а также имеет макрорасширения. |