![]() |
возможно ли освоить ассемблер , имея навыки веб программирования?
здрасти
наткнулся тут на статейку http://ru.wikibooks.org/wiki/Ассемблер_в_Linux_для_програм истов_C скомпилил хело ворлд - всё вроде работает хорошо. задался вопросом - если я знаю пхп, js и основы простого Си (год изучал в универе на заочке) - какова вероятность, что я могу, не изучая дальше Си, освоить ассемблер до того уровня, чтобы научиться писать демки? я имею ввиду ту красивую абстракцию, программируемую на аппаратном уровне. Или же мне всё равно стоит изучать дальше Си и сначала хорошо им овладеть, прежде чем лезть в ассемблер? |
ассемблер не имеет связи с Си , так что совершенно без разницы, кто сначала курица или яйцо.
|
там пишется, что его проще освоить, если уже имеешь хоть какие-то представления об архитектуре, изучив Си.
а я тока знаю как в Си память выделить под переменную, как указатели делать на эту память. С процессором вообще не знаком. Сейчас впервые прочитал про регистры. Смогу ли я написать демку? |
Да, асм некак не зависит от С, а то что ты привел это просто асмовая вставка. По поводу демок http://wasm.ru/publist.php?list=19 - это маны по опенгл и директиксу почитай, разберись. Если что-либо не понимаеш в коде, то подтяни асм ещё.
PS: Я например начинал изучать асм имея о С (++) лиш абстрактное понятие. |
Цитата:
С/С++ имхо, знать для этого не обязательно |
!_filin_!
Цитата:
Цитата:
|
спасибо за поддержку.
ещё не пробовал писать демки. на асме то ниче не писал. просто хотел узнать, каковы шансы освоить его самому и не забить. а то щас давно уже тока и слышу что асм самый сложный язык. а я на обычном Си пишу с трудом |
Я бы порекомендовал взять для себя асм, реализация которого есть и в винде, и в линуксе. Так можно избежать путаницы в синтаксисе- ведь тот же безусловный переход в разных асмах пишется по-разному.
|
Я тоже только начал учить асм, Си не требуется.. Асм совсем от всего отдельная тема и не с какими ЯП не пересекается, он сам по себе. Главное хорошо освоить строение памяти, процессора и вообще работу архитектуры.. Удачного изучения.
|
Цитата:
Brainfuck никто не отменял... [/offtop] |
Цитата:
|
что значит "взять асм для линуха и винды сразу"?
я вот взял пример из той вики: PHP код:
а чем надо компилить и как писать, чтобы получился экзешник и для винды и для линукса? (чувствую ща жуткую херню спорол =\) |
Никак!
... можно поступать как в джаве! Создается "песочница" внутри которой вызовы интерфейсных функций стандартизованы, назовем тех кто пишет код для песочницы ДИВЕЛОПЕРАМИ! А сама песочница соединена с системой стандартными функциями (в случае мастдая WinAPI) ! Тогда "песочные дивелоперы" могут писать код не думая о системе, главное чтоб добрые дяди установили песочницу на тех компах где будет работать проги песочных дивелоперов. а иначе каждая ось представляет свой набор функций для работы с системой и подменять их трудоемко (как впрочем и не нужно из-за перегруженности кода)! .... все это конечно лажа! Ведь с таким же успехом можно называть и php платформо независимым, раз код может исполняться и на линуксе с установленным php и на мастдае с установленным php! |
Я бы посоветовал начинать учить ассемблер под конкретное семейство процессоров. Например IBM PC. Тогда основное что тебе понадобиться - это знание двоичной и шестнадцатеричной систем исчисления, а также архитектуры самого микропроцессора, его строение и принципов роботы на физическом и логическом уровнях. В универах это учат на 2 курсе =) Так ты сможешь понять почему код на ассемблере выглядит именно так, а не иначе и что именно этот код делает для получения желаемого результата. А уже после этого переходить на ОС и думать про то, как сделать что б работало на линукс\виндовс ... Хотя я понимаю, что сейчас очень модно кодить используя все готовое ('черные ящики'), но я не сторонник такого метода.
Вот хорошая книжечка http://librussian.info/lib_page_93567.html |
Цитата:
|
не нужно подходить к изучению ассемблера как к чему-то необходимому. я сам прошел через этот этап и могу сказать точно - важнее всего знать о компьютере его внутреннее устройство (раз мы тут ассемблер обсуждаем давайте я тоже до уровня сис. блока приземлюсь), здесь нужно подходить не с обратной стороны как автор темы. хотите изучить устройство компьютера? так изучайте! читайте книжки полезные. а вот ассемблер в итоге сам приложиться и в последствие поймете, что его доскональное изучение для нормального человека (не считая крутых системных разработчиков которым это действительно нужно) вещь, вообще говоря, бесполезная. ну конечно не считая хэкеров, крэкеров и прочего ширпотреба. еще раз хочу сделать акцент на следующей мысли уместной далеко не всегда - тут важно знать только КАК это работает, а не заниматься этим и тратить время впустую.
|
Цитата:
что до*** чего лицензионного стоит? или ты на линуксе? ПС: Модераторы простите за горячие высказывания но просто тупо день ппц |
каких еще реверсеров? которые обитают здесь? несомненно, то чем они занимаются полная чушь. или ты считаешь копание с отладчиком умным и достойным занятием лишь для особо одаренных? человек с кучей свободного времени, которое он теряет на "развлечение" без намека на интеллектуальное развитие в моем представлении - бездельник. бездельники же никакой пользы не несут, и поэтому я без раздумия называю представителей подобного класса людей ширпотребом.
лицензионного ПО лично у меня, к сожалению, нет. но по мне об этом думать и благодарить кого-то так же нелепо, как каждый день, проходя по дороге кричать спасибо асфальто-укладчикам. |
кроме того что для разных процессоров разные ассемблеры, также для никсов и винды синтаксисы ассемблера немножко другие. так что ты определись под чем програмить будешь.
а собственно зачем тебе асм? просто ради интереса? если да то лучше наверное не начинать этим заниматься. |
каких еще реверсеров? которые обитают здесь?
- то есть пост выше говорит именно о людях которые обитают здесь? и где ты это написал? - и с чего ты взял что кто то об этом будет громко кричать когда он обошел защиту мост вантед или фтп голд? думаешь ты один скромный? Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
|
Сила привычки) просто нравится.
MySQL - сиквель. Sun - сун (а это наверное из-за немецкого) Возвращаясь к теме возможно ли освоить ассемблер , имея навыки веб программирования? - мой ответ да. |
Цитата:
|
Цитата:
Вот тебе пример: Я весь 6 и пол 7 класса проигрался с кубиком-рубиком...Ну согласись долбо***зм !!! А в 10 и 11 классах с меня всё пёрлись, когда я арифметические и геометрические прогрессии за пару секунд в уме считал (я в этом году закончил 11 класс), НО!!! Меня считали "ШИРПОТРЕБОМ" когда как даун возился с кубиком!!! Если хочешь знать, то я тоже начинал с реверса и асма, и здал ЕГЭ по мат-ке на 98 баллов, а ЕГЭ по инф-ке на 96 баллов и мне прислали письмо из МФТИ с текстом о зачислении без экзаменов!!! |
я ваще хочу для начала понять общий синтаксис ассемблера.
в большинстве языков очевидно - как определить переменную, как функцию, а тут для меня слишком много загадок пока. меня вот эти загадки и подталкивают на его изучение ) |
Сначала СИ потом Асм.
В универах так учат. Сам сейчас буду Асм учить. |
А с чего вы взяли что если в универе так учат, то это правильно?
Дикс, попробуй покопаться в чужих прогах дизассемблером, если начнешь понимать язык. |
Цитата:
|
to kakoy_nafig_nik :
Цитата:
думаю, они выбрали верный, ход, сначала развитие логики, понимание основ, а только потом сложные языки Ассемблер, php и базы данных. to 0x22b : Цитата:
to ТС : Если отлично владеешь PHP и sql, то СИ, скорее не нужен, т.к. понимаешь элементарные основы программирования. |
С и асм - совершенно разные вещи! Главное знать основы программирования (неважно какого языка) важна логика
а вообще я предпочитаю С + асм (inline assembler) |
Цитата:
Цитата:
|
Цитата:
Речь идёт о высоком уровне (ооп) и низком... Если вопрос звучал могу ли я научиться кодить на C# или Delphi(на уровне лего-компонентов) зная php , то да ... Как раз Си (не С++ конечно) достаточно приближен к низкому уровню , чтобы хото частично понять основы... от себя: я неплохо так знал C++ и достаточно хорошо С# , но изучние асма даже при наличии правильной литературы на первых этапах давалось относительно(!) тяжело , не потому что Асм сложный язык, а потому что я непонимал принципов нискоуровневого программирования в целом... (архитектура , память , регистры , смещения , тип... ) вообще я до сих пор асм нормально не знаю ;) |
Т.к. люди с репутацией на форуме говорят - "Сначала СИ, потом Асм", то думаю ТС тебе так и нужно поступить.
|
2 hoty
типа а мну не слушать??? 8)))))))))) Нука нука обьясните как вы репутацию связываете и с чем? /// неужели обнаружили глубинную связь репутации и с СИ и с Ассемблером? // тогда малиновые штаны тебе в руки и забирайся на верхнюю строчку ... и всем страждущим по одной КэЦэ раздавай 8))) |
to hoty Посты пожалуста не повторяйте свои, а то можно и за флуд огрести по той самой репутации. Третий пост об одном и том же, уже на флуд смахивает.
|
to Delimiter:
Цитата:
владею лишь Паскаль и СИ. сейчас надо Ассемблер учить. Поскольку знаю, что для Ассемблера нужны навыки основ программирования, то владея php (в моем случае СИ), можно начать изучение Ассемблера. Т.к. ТС знает куда "копать" ), то считаю, Асм ему дастся, быстро. Цитата:
Цитата:
0x22b Цитата:
А слушать ТС думаю, будет тех у кого больше репутация - на подсознании больше доверия )). Вот и написал: "слушай, тех у кого репутация выше". Не вижу смысла накручивать большую репутация на форуме. Зачем она большая, если ничего не знаешь?) |
Delimiter по поводу репы абсолютно прав ...
опять же , я не писал учи си , потом Асм , я только пояснил , что есть вещи о которых программируя в ООП мы даже не задумываемся , а в асме эти вещи наоборот в большинстве случаев жизненно необходимы ... --------------------- имхо: Вообще Главное - Желание и стремление , кто сказал что не все языки одинаково полезны?)) ... (всмысле хорошо знать их) |
Цитата:
Можно и без него, мат. склад ума. :) |
Цитата:
Цитата:
так что можно и асм начинать Цитата:
Цитата:
http://litprom.ru/list.phtml?userID=47546 |
| Время: 00:49 |