Kona-chan
27.02.2011 10:48 Mendoza-desktop
Пстач, мне нужно сдать десяток лаб по ассемблеру, от чего у меня ПРЕРЫВАНИЕ, но пост не об этом, а о практической пользе данного ЯП сегодня. Он вообще где-нибудь применяется? И нужно ли, скажем, линукс-админу или веб-программисту его знание?
Микроконтролелры можно программировать.
нужно.
скажем так, производные в твоей жизни тоже не часто нужны, но иногда внезапно они косвенно становятся нужными.
кто-то погромирует контроллеры на асме?
Сначала еще хотел дописать в пост «микроконтроллеры во внимание не берем», но потом подумал: есть же си.
да там куча языков сами контроллеросоздатели напридумывали
Тогда такой вопрос: что мешает изучить производные в тот момент, когда они понадобятся?
Вставочки можно писать ._.
Желательно аргументировать.
И оптимизировать программу на два такта, ога.
что мешает изучить арифмерику потом, когда в магазине со здачей наебут?
Плохая аналогия.
*сдачей, починил
эм, не так выразился. В общем, асм нужен для того, чтобы ты понимал как этот сука ебаный пиздец работает, и чтобы ты не получил ПОПАБОЛЬ когда у тебя внезапно вещественные числа неточно считаются, или когда твою программу через переполнение стека хакают, и т.п.
Ну согласись, два такта на гигагерцовом проце это смешно, а два такта на каком-нибудь мегагерцовом говне это уже не так смешно
хорошая
Допустим, представление вещественных чисел можно и без углубления в асм изучить.
Потому-то и делаю оговорку, что микроконтроллеры не рассматриваем.
но вон в ffmpeg вроде как есть ассемблерные вставки, хотя он совсем не на микроконтроллерах работает
изучение ассемблера — это только средство. Цель — не научиться писать проги на ассемблере, цель — глубоко понять, из чего состоит и как работает цпу. Это несомненно необходимые знания.
а как по-твоему, за сколько тактов выполнится "if (a == b)" ? А за сколько "if (a == 0)" ?
два и один, не?
ну и да, асм пригодится когда надо будет дизассемблировать чей-то кусок ехешника :3
да
Не скажу за сколько, но сравнение с нулем точно быстрее.
ассемблерные вставки в си нужны только там, где компилер недостаточно хитрый, чтобы правильно соптимизировать без посторонней помощи.
ну где-то так. Еще быть может надо будет перенести a и b из стека в регистры и т.п.
Исчисление производных и базовая арифметика используются в несколько разных кругах задач.
А в прыщах?
компьютер (а значит и его ЦПУ) используется примерно так же широко, как и арифметика. Тебе очень не помешает знать, как он работает.
когда у тебя в ванной кран прорвет, ты будешь жалеть, что не знаешь устройство крана, хотя нахуй оно кому нужно.
если ты будешь поднимать апачик да играть в сапера, то не нужен тебе ассемблер. В общем, мы всем псто разрешаем тебе прогуливать пары.
Я не считаю, что отождествление «компьютер == CPU» справедливо.
а из чего состоит компьютер?
Я на них и так не ходил, но лабы-то и экзамен сдавать придется.
разрешаем тебе вылететь из вуза, т.к. ассемблер не нужен
Это серьезный вопрос или риторическая попытка подъебать?
ты хочешь сказать, что отлично знаешь, как работает компьютер, не зная, как работает его главнейшая часть?
Я хочу сказать, что не для всех задач, выполняемых на компьютере, обязательно глубокое знание принципов его работы.
это риторическая попытка подъебать, т.к. все, что не является само по себе процессором, содержит оный в себе
иди винду переустанови, там тебе много знаний не понадобится
Да, заодно всех отписавшихся прошу оценить уровень своих познаний в ассемблере.
прошел семестровый курс лекции + лабы + курсовой + экзамен, половину забыл, но легко могу вспомнить.
это всё можно бесконечно размазывать. Да, не обязательно. И да, знать не помешает. Да, можешь прогуливать, если хочешь. И да, знание ассемблера в резюме — это плюс.
Тебе решать.
Да и вообще не нужно учиться в вузе, чтобы суметь нормально прожить свою жизнь. В чем вопросы то?
Довольно очевидные вещи.
вот-вот, и я об этом.
да, но почему ты хочешь, чтобы псто принимал решение за тебя?
Вообще-то я интересовался практическим применением ассемблера сегодня.
практическое? В крайне узких специальностях.
ок, системное программирование (написание компиляторов).
Ок, и только?
можно без ассемблера — сразу машинный код :3
а здесь тоже надо знать ассемблер ;)
ну и изучение в целях развития. Пока не могу что-то другое придумать.
А, ну! Электронщикам, делающим сами микроконтроллеры, тоже нужен ассемблер :)
да покажи мне хоть одного микрушника, кто на асме пишет
Развитие — это святое. Правда, из-под палки как-то развиваться плохо получается.
Приходи к нам в универ, покажу тебе такого мудака.
мне джва месяца пешком идти придется
я говорю *делающие*, а не использующие. Юзеры VS девелоперы.
Больше, я думаю. Энивей, у меня от его микроконтроллеров до сих пор жопа болит.
вот смотреть дампы бинарников в нашем швабодном мире — штольман упаси. Хотя да, занятное дело. Я как-то на каникулах одну винрарную игрушку хацкнул — нашёл с помощью IDA места, где проверялся лицензионный код, и программкой на делфи перебрал все удовлетворяющие условию коды :3
Там для перебора получалось пространство что-то около 26^5 — программка за секунду справлялась.
// дописал-таки
веб кодеру ассемблер обязательно, да.
Например чтобы покапаться в дампе процесса ie9, рассказать разрабам о причинах ошибки :3
Чтобы сказать "Мудаки кривожопые" надо покопаться в дампе?
чтобы сказать это достаточно взглянуть на юзабилити осла, а чтобы обосновать да, можно и покопаться
а вообще там был сарказм
ну вообще да, reverse engineering как область применения ассемблера забыли.
знать как работает компьютер и знать асс, имхо, всё же разные вещи. Принципы работы заключаются в логике микропроцессоров, но не в самом ассемблере
иле я хуй и я не прав?
ты хуй и ты не прав. Если под "знать компьютер" ты имел ввиду "переустановить винду" — то не надо. Если "почему маленькая программа работает в сотни раз быстрее большой" — то надо.
пхп-макаке — нет.
обижаешь макак же, ну
но в посте фигурировала фраза: "компьютер используется так же широко, как и арифметика. Тебе очень не помешает знать, как он работает."
и где противоречия?
ну а разве одно и то же "как он работает" и "почему маленькая программа работает в сотни раз быстрее большой" ?
это разные уровни абстракции в общем-то. Под "знаю английский" можно иметь ввиду "май нейм из кактус ай вонт ту эм хм ну в общем фак", а можно иметь в виду десятилетний опыт.
Удибил, признаю поражение
Тред не читал, ОП — хуй, САЖА