Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
#1

Нужен-ли assembler C++ программисту? - C++

29.09.2013, 10:56. Просмотров 1562. Ответов 14
Метки нет (Все метки)

Вчера с друзьями спорили, нужен-ли assembler современному программисту (не микроконтроллеров и т.п).
Вот я пишу на С++, асемблер не учил и спокойно работаю без него.
И когда я работаю с памятью, то знаю, что память выделяется где-то в куче, либо в стеке.
По идее мне больше и не нужно знать.
Друзья говорят, что асемблер нужен для понимания, но вот для понимания чего, так никто толком не сказал
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.09.2013, 10:56     Нужен-ли assembler C++ программисту?
Посмотрите здесь:

Нужен ли диплом программисту? - C++
Мне учитель по программированию постоянно говорил , что я дипломом могу одно место вытереть. Все равно когда приду устраиваться меня за...

Нужен совет начинающему программисту - C++
Доброго времени суток! Поделитесь экспертным мнением товарищи программисты... Сейчас я дочитываю Лафоре (осталось пару глав) и хотел бы...

Помогите начинающему программисту... - C++
Прив всем ;) Помогите начинающему программисту... Как сделать так, чтоб при нажатии <F5> мне выдавалось не просто сообщение о том. что в...

Советы начинающему программисту - C++
Всем доброго время суток! Спрошу кратко: начал заниматься программированием в академии (на данный момент изучаю C++) Проблема таки вот...

Куда податься будущему C++ программисту? - C++
Народ всем привет вот сейчас я изучаю C++ и передо мной стоит выбор быть программером игр или программером прикладного обеспечения...

В каком направлении следует развиваться программисту C++ - C++
Сразу просьба не ругаться т.к. такие темы многих раздрожают)) Прочитал пару книг по С и С++, на работе пишу прошивки под...

Что же нужно знать программисту с математики - C++
Доброго времени суток! Прошу прощения, если такая тема уже была, не видел и в гугле найти ответ на этот вопрос не получилось. Уже месяц...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
eocron
Кактус
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
29.09.2013, 11:12     Нужен-ли assembler C++ программисту? #2
Ассемблер тебе не нужен, если ты не собираешься связываться с низкоуровневыми программами и с железом - драйвера, операционные системы и все с ними связанное. Вот, например, как зажечь определенную лампочку на материнке? Эту проблему решает ассемблер. Как написать программу максимально маленькой? Эту проблему тоже решает ассемблер. (Например, вирус форк-бомбы можно написать всего в несколько десятков байт, вообще на них популярно писать мозго-дробительное вирусы) Через C++ это скорее всего проблематично, а об эффективности вообще молчу, но если вдруг друзья уговорят - в C++ можно делать ассемблерные вставки.
Djam
Саморазвитие <3
34 / 24 / 1
Регистрация: 28.12.2012
Сообщений: 235
Записей в блоге: 1
29.09.2013, 11:58     Нужен-ли assembler C++ программисту? #3
С помощь ASM'a можно уменьшить кол-во памяти занимаемое программой, увеличить скорость работы программы.
Assembler нужен любому программисту, кроме веб разработчиков ( да и то я думаю, им желательно бы его знать)
Где-то была стать на хабре, к сожалению пока не могу найти, если найду добавлю в тему
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.09.2013, 12:23     Нужен-ли assembler C++ программисту? #4
Цитата Сообщение от dimakozyr Посмотреть сообщение
Друзья говорят, что асемблер нужен для понимания, но вот для понимания чего, так никто толком не сказал
Для понимания принципов работы вычислителей в компьютере ассемблер не нужен. "Ассемблер нужен для того, чтобы понять, как работает компьютер" — это то же самое, что и "Английский нужен для того, чтобы понять квантовую механику". Нет, конечно, в обоих случаях знание языка принесёт некоторую пользу, потому что программы, статьи, книги и т. п., но суть-то не в языке.

Цитата Сообщение от Djam Посмотреть сообщение
С помощь ASM'a можно уменьшить кол-во памяти занимаемое программой, увеличить скорость работы программы.
А можно потратить кучу времени на бесполезную оптимизацию совершенного ненужных кусков кода.

Цитата Сообщение от Djam Посмотреть сообщение
кроме веб разработчиков
У них ассемблер называется JavaScript.
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
29.09.2013, 12:34  [ТС]     Нужен-ли assembler C++ программисту? #5
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
А можно потратить кучу времени на бесполезную оптимизацию совершенного ненужных кусков кода.
Вот-вот, и на изучение языка. Вот если-бы я его в универе учил, то ладно. Но сейчас я могу потратить год на изучение асемблера, либо потратить тот-же год на изучение технологии, которую я реально смогу применить.
Djam
Саморазвитие <3
34 / 24 / 1
Регистрация: 28.12.2012
Сообщений: 235
Записей в блоге: 1
29.09.2013, 14:10     Нужен-ли assembler C++ программисту? #6
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Для понимания принципов работы вычислителей в компьютере ассемблер не нужен. "Ассемблер нужен для того, чтобы понять, как работает компьютер" — это то же самое, что и "Английский нужен для того, чтобы понять квантовую механику". Нет, конечно, в обоих случаях знание языка принесёт некоторую пользу, потому что программы, статьи, книги и т. п., но суть-то не в языке.

А можно потратить кучу времени на бесполезную оптимизацию совершенного ненужных кусков кода.

У них ассемблер называется JavaScript.
Угу, бессмысленную оптимизацию кода, вот так у нас все халатно к этому относятся, вот так и оптимизируется, что все программы и игры( почти все) от Российского разработчика на топовых компьютерах тормозят.. Действительно, какая разница будет программа весить 2 Гб или 600 Мб...

Добавлено через 1 минуту
Цитата Сообщение от dimakozyr Посмотреть сообщение
Вот-вот, и на изучение языка. Вот если-бы я его в универе учил, то ладно. Но сейчас я могу потратить год на изучение асемблера, либо потратить тот-же год на изучение технологии, которую я реально смогу применить.
Если вы задали этот, вопрос, значит вы не уверены нужно вам это или нет, однозначна нужно, хуже от этого не будет! Я был очеьн рад когда нам на 3 курсе начали преподавать технологию программирования на ASM , верите или нет, мне это очень сильно помогло и не только в программирование...
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
29.09.2013, 14:15     Нужен-ли assembler C++ программисту? #7
Цитата Сообщение от Djam Посмотреть сообщение
бессмысленную оптимизацию кода
Именно. Есть оптимизации необходимые, а есть бессмысленные (в частности, преждевременные). Но даже если что-то можно оптимизировать, далеко необязательно это делать погружением в ассемблер. Потому что проблема может быть, скажем, в архитектуре. Достаточно переделать алгоритм. Да и докинуть пару гигов ОЗУ порой выгоднее чем править код.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
29.09.2013, 14:25     Нужен-ли assembler C++ программисту? #8
Цитата Сообщение от Djam Посмотреть сообщение
С помощь ASM'a можно уменьшить кол-во памяти занимаемое программой, увеличить скорость работы программы.
А можно и сразу начать писать на ассемблере..
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.09.2013, 14:31     Нужен-ли assembler C++ программисту? #9
Цитата Сообщение от Djam Посмотреть сообщение
Действительно, какая разница будет программа весить 2 Гб или 600 Мб...
Действительно, какая разница? Поздравляю с успешной разморозкой, если для вас полтора гигабайта — это что-то серьёзное.

Цитата Сообщение от Djam Посмотреть сообщение
Я был очеьн рад когда нам на 3 курсе начали преподавать технологию программирования на ASM , верите или нет, мне это очень сильно помогло и не только в программирование...
Изучали паттерны проектирования "подпрограмма" и "цикл"?..
ct0r
Игогошка!
1768 / 670 / 42
Регистрация: 19.08.2012
Сообщений: 1,284
Завершенные тесты: 1
29.09.2013, 14:36     Нужен-ли assembler C++ программисту? #10
Djam
Если вдруг возникла нужда прооптимизировать что-то на асме, то в 99% надо вернуться назад и подумать еще раз над архитектурой и сложностью применяемых алгоритмов, как уже сказал Tulosba. Да, в некоторых местах нужно будет вспомнить, как работает низкий уровень, чтобы, как пример, но далеко не единственный, устранить перебрасывания кэша в распараллеленных местах, но это все равно не эквивалентно написанию кода на ассемблере.

И в любом случае, компании проще докупить памяти, чем тратить намного большие деньги на написание, тестирование и сопровождение ассемблерного кода.

PS я сам в универе некоторые вещи делал на masm, tasm, nasm, но мне это вообще не пригодилось ни на одной работе. Как и моим знакомым коллегам.
Djam
Саморазвитие <3
34 / 24 / 1
Регистрация: 28.12.2012
Сообщений: 235
Записей в блоге: 1
29.09.2013, 14:40     Нужен-ли assembler C++ программисту? #11
Ладно я вижу тут все труц программисты и никому ASM не нужен, удачи в написание кода, заканчиваю свой оффтоп

Добавлено через 53 секунды
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Действительно, какая разница? Поздравляю с успешной разморозкой, если для вас полтора гигабайта — это что-то серьёзное.

Изучали паттерны проектирования "подпрограмма" и "цикл"?..
Ну да разница то какая, приведем анологию в 30 гб и 15 поздравляю вас миллионер
Убежденный
Системный программист
Эксперт С++
15293 / 6925 / 1095
Регистрация: 02.05.2013
Сообщений: 11,331
Завершенные тесты: 1
29.09.2013, 14:40     Нужен-ли assembler C++ программисту? #12
Не помню, когда я последний раз писал что-то серъезное на ассемблере.
Но при этом регулярно сталкиваюсь с необходимостью как минимум понимать
ассемблерные листинги. Например:

- отладка;
- разбор крэш-дампов;
- поиск и анализ "узких" мест (оптимизация).

Есть и другие применения у ассемблера, но большинство из них весьма
специфичны, поэтому перечислять не вижу смысла. По поводу "нужен - не нужен" -
не могу сказать, что знание ассемблера прямо так уж позарез необходимо.
Но что лишним оно не будет, так это точно.
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
29.09.2013, 18:53  [ТС]     Нужен-ли assembler C++ программисту? #13
В общем, лучше поучу что-то другое
XRuZzz
Антикодер
657 / 558 / 27
Регистрация: 15.09.2012
Сообщений: 2,509
29.09.2013, 19:05     Нужен-ли assembler C++ программисту? #14
Страуструп доходчиво отвечает на эти вопросы вначале книги "Язык программирования C++". Поэтому смысла обсуждать мало.
Скажу только, что с интересом и завистью наблюдаю(вмысле пару раз натыкался на его темы в разделе Ассемблер) как товарищ _ с форума (логин такой _) старательно изучает ассемблер(помимо C++), поэтому репутация этого человека в моих глазах увеличивается.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.09.2013, 21:16     Нужен-ли assembler C++ программисту?
Еще ссылки по теме:

Нужно ли программисту знать математику (если да то какую) - C++
Здравствуйте народ у меня к вам вот такой вопрос нужно ли программисту знать математику(если да то какую?) просто начал изучать C++ по...

На каком уровне нужно знать шаблоны программисту - C++
Здарсвуйте. В каком объеме нужно знать шаблони(template) хорошому программисту?

Требуется реализовать алгоритм Дейкстры начинающему программисту - C++
Ребята огромная просьба помочь с программой. Условия следушие-реализовать алгоритм Дейкстры на С++. Я сидел парился и смог только часть...

Имеет ли смысл учить архитектуру ЭВМ программисту? - C++
Имеет ли смысл учить архитектуру ЭВМ и ОС для изучения программирования ? Если нужно , то дайте ссылки на информацию и обучение для...

Подскажите начинающему программисту, в чем отличие структур от классов в C++ - C++
Расскажите пожалуйста начинающему программисту, в чем отличие структур от классов в C++


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
gazlan
3130 / 1905 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
29.09.2013, 21:16     Нужен-ли assembler C++ программисту? #15
Цитата Сообщение от Убежденный Посмотреть сообщение
регулярно сталкиваюсь с необходимостью, как минимум, понимать ассемблерные листинги
Happy Debugging!
Yandex
Объявления
29.09.2013, 21:16     Нужен-ли assembler C++ программисту?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru