|
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
|
|
ASSEMBLER в современном программировании нужен/нет?24.02.2013, 23:56. Показов 7465. Ответов 40
Метки нет (Все метки)
Если раньше использовали ассемблер в основном для оптимизации кода, то при трассировки современным компилятором необходимость в этом отсутствует (во всяком случаи так оповещается в некоторых источниках). У меня возник вопрос: где сегодня может быть полезны знания ассемблера как такового и в каких сферах он применятся (если вообще применятся). Ну и вообще, знать его нужно или нет. Спасибо.
0
|
|
| 24.02.2013, 23:56 | |
|
Ответы с готовыми решениями:
40
Реализация хранения данных из БД в современном WEB-программировании Зачем в современном мире нужен HeapAlloc ? Нужен совет новичку в программировании |
|
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409
|
|
| 26.02.2013, 20:44 | |
|
0
|
|
|
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409
|
||
| 26.02.2013, 21:40 | ||
|
Добавлено через 1 минуту Извините, вопрос поставил некорректно "А на С++ можно программировать микроконтроллеры" Только сейчас заметил.
0
|
||
|
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409
|
|
| 26.02.2013, 21:46 | |
|
0
|
|
|
|
|||
| 26.02.2013, 21:51 | |||
|
Добавлено через 1 минуту По-моему, при обсуждении языка программирования спрашивать "а на нём можно программировать то-то?" довольно нелепо. В большинстве случаев одну и ту же задачу можно решить на куче различных языков программирования. И если уж обсуждать различия, то точно не в функциях, поддерживаемых языком.
0
|
|||
|
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409
|
||||
| 26.02.2013, 22:00 | ||||
|
Добавлено через 2 минуты Добавлено через 2 минуты
0
|
||||
|
|
||
| 26.02.2013, 22:20 | ||
|
короче... Если спросить, "на каком языке можно написать оконное приложение, а то надоело с консольным Hello World играть", один тебе посоветует Си и WinAPI 2й Ассемблер и WinAPI 3й Delphi и WinAPI 7й С++ и Qt 4й C++ и MFC 5й Python и Qt 6й C#, Java, и ещё куча языков... Аналогичные ответы на вопросы "на каком языке писать 3d графику, звук...и.т.п.?". К тому же, все эти языки могут расширяться сторонними библиотеками. Короче, решить задачу можно хоть на ассемблере. Спрашивать, а умеет ли язык ... можно только если до этого тебя пытали в школе QBasic-ом, и у тебя развилась фобия, что языки программирования много чего не могут.
0
|
||
|
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409
|
||
| 26.02.2013, 22:35 | ||
|
Спасибо за пояснение.
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||
| 15.03.2013, 07:16 | ||
|
0
|
||
|
72 / 72 / 5
Регистрация: 10.02.2013
Сообщений: 434
|
|||||
| 15.03.2013, 12:12 | |||||
|
Добавлено через 10 минут Вот нашел небольшой FAQ от Луговского 14 летней давности. Мысли хорошие, но тест содержит мат, как и все известные тексты луговского. Только в последнем пункте накосячил, т.к. машкоды и команды ассемблера имеют прямую связь. где жирный шрифт там был мат
- На ассемблере можно писать эффективные программы, потому что нет лишних инструкций, быстро!
- Ага, а для современных процов надоедает руками оптимизировать, учитывать все конвееры и распараллеливание, и главное, нафига, когда компилятор лучше это делает? - На нем можно писать маленькие программы туда, куда надо, например, BIOS написать! - BIOS сейчас не 8 килобайт, так что пишется на Си и Форте. - Ну все равно, низкоуровневое программирование надо на ассемблере делать - вот ядра ОС, драйвера /щас вы начнете мямлить, и я как скажу, что видел исходники Крутого Драйвера для DOS на ассемеблере, всех посрамлю!/ - Родной, ты в каком мире живешь? Это все пишется на Си, ассемблера там доли процента - загляни в исходники ядра Linux да посчитай количество строк в файлах *.s сравнительно с общим размером. - Ничего вы не понимаете! Каждый программист должен знать ассемблер, хоть даже не применяет, иначе он плохой программист, и вообще, чем ниже уровень языка, тем выше должен быть интеллект программера! - Шел бы ты математику изучать, кодеришка серый, у тебя ж даже зеленого представления о функциональных языках нет. - Ну вы же не можете отрицать, что ассемблер все-таки нужен? - Ну нужен, да только в таких малых количествах, что можно и время не тратить, навряд ли тебе это понадобится. - Как это в малых? Во, вспомнил - он нужен для написания компиляторов, они же в машиный код (ассемблер значит) компилируют. Так что не отмазывайтесь, что компилятор Си написан на Си, библиотеки еще есть - я ж сам видел, что RTL Турбо Паскаля 7 написана на ассемблере! - Ты бы еще более убогонький недоязычок в пример привел, а у нормальных языков библиотеки пишутся на них же. Ты что, про кросс-компилирование не слышал? Да и даже для нативного компилирования программисту компилятора не требуется учить ассемблер, а нужен всего лишь справочник по машкодам соответствующего процессора. И что это ты там сказал про компилирование непосредственно в ассемблер? Иди передай своему преподавателю курса теории компиляторов, что у тебя трудности с пониманием процесса. Добавлено через 4 часа 2 минуты Вот нашел статью dihalt'а о программировании в МК c vs assembler
0
|
|||||
|
Антикодер
1889 / 871 / 48
Регистрация: 15.09.2012
Сообщений: 3,092
|
|
| 15.03.2013, 15:14 | |
|
полностью согласен с DI Halt -ом - нечего добавить. Просто тупо писать C++, а в узких местах добавляем ассемблер.
то есть сначала смотрим, какой ассемблерный код выдаёт компилятор C++ и если он нас не устраивает правим. Но в моей практике не было таких ситуаций. Обычно если алгоритм работает это уже хорошо. Я так понимаю этим C++ выгодно отличается от других языков типа C# и Java. можно опустить вопрос на более низкий уровень, нужно ли уметь проектировать логику микросхем? очевидно этим кто то должен заниматься.
0
|
|
| 15.03.2013, 16:22 | |
|
Не по теме:
0
|
|
|
72 / 72 / 5
Регистрация: 10.02.2013
Сообщений: 434
|
||||
| 15.03.2013, 17:07 | ||||
|
Кстати, один раз мне пригодилось знание ассемблера - я понял, что и где виснет и поставил nop в МК LPC1343. Потому мое мнение - не надо писать на ассемблере даже МК, но нужно его знать из-за таких узких мест, но если вы считаете, что установить nop это писать на ассемблере, то я не согласен.
0
|
||||
|
|
|||||||
| 15.03.2013, 18:23 | |||||||
|
Кликните здесь для просмотра всего текста
это вывод за первую секунду поиска, надеюсь весь показывать не надо
0
|
|||||||
|
72 / 72 / 5
Регистрация: 10.02.2013
Сообщений: 434
|
||
| 15.03.2013, 19:07 | ||
|
Я же писал, что у меня тоже были программы, в которых тоже нужно было вставить volatile __asm__{"nop nop"}, который нужен для завершения работы конвейера. А вот именно вариантов для оптимизации скорости я не знаю.
0
|
||
|
|
||
| 15.03.2013, 20:06 | ||
|
Для примера - у нас в конторе пишут один open source проект, в котором задействован алгоритм Смита-Ватермана (кому интересно, может погуглить что это), так вот, когда его переписали через интринсики (SSE2) скорость на некоторых данных возросла в 100 раз! Нехилая такая оптимизация)
0
|
||
|
72 / 72 / 5
Регистрация: 10.02.2013
Сообщений: 434
|
||
| 15.03.2013, 20:11 | ||
|
0
|
||
| 15.03.2013, 20:11 | |
|
Нужен специалист в Иб/программировании/Сис. Администировании для написания уникальных статей. Удаленно Нужен-ли assembler C++ программисту? gss visual assembler 3.9 нужен код активации Нужен код на Assembler для создания герба Галисии Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|