Любой компилятор на выходе выдаёт двоичный код. Но твой ассемблерный код будет быстрее кода, сгенерированного компилятором, только в том случае, если ты очень хорошо знаешь систему команд процессора.
Каждая процессорная команда в программе выполняется не сама по себе, а в окружении других команд - она влияет на состояние процессорного конвейера, одновременно выполняющего несколько команд. Разные комбинации одних и тех же команд могут как заметно ускорить, так и заметно замедлить программу. Потому, разработчики компиляторов тратят много усилий на учёт особенностей взаимодействия команд процессора. Так что конкуренцию C-коду может составить только очень опытный специалист по ассемблеру.
С другой стороны, высокоуровневые возможности современных языков программирования требуют дополнительных вычислений в процессе выполнения программы. В этом отношении лучше всего дела у C - он изначально разработан так, чтобы накладные расходы в процессе выполнения были сведены к абсолютному минимуму. У C++ с этим немного хуже. Rust хоть и объявлен убийцей C, но по скорости работы кода даже до C++ недотягивает. Остальные популярные языки медленнее.
Другие языки программирования и технологии
Двоичный код быстрее языков программирования по типу c++? (Я знаю что эти языки тоже написаны на двоичном коде)
Если ты напишешь этот код под какие-то специализированные команды конкретного процессора (будешь широко использовать расширенные наборы команд помимо стандартных х86), то может быть. В противном случае вряд ли ты напишешь хоть сколь-нибудь сложный и при этом более эффективный код, чем за тебя это сделает компилятор, а вот времени потратишь гораздо больше.
Язык программирования не может быть быстрым. Быстрой может быть скомпилированная программа. А компилируется она, например, в такой же машинный код. Всё зависит от того, насколько эффективным будет сгенерированный и написанный тобою код.
у си и с++ нормальный компилятор и конечный код практический такой же как если бы писали на асме.. так что скорость тут практически одинаковая, если не такая же
двоичный код - язык машины,
а языки программирования, - мнемоническое обозначение машинных команд, для простоты понимания и удобства написания программ ....
а языки программирования, - мнемоническое обозначение машинных команд, для простоты понимания и удобства написания программ ....
Буквально цифры используют только очень редкие умники
существенно чаще пишут на ассемблере.
широкие массы использую что-нибудь простое, от BASIC и до PYTHON
существенно чаще пишут на ассемблере.
широкие массы использую что-нибудь простое, от BASIC и до PYTHON
Просто San4Ezz
а можно я стану редким умником и буду компилить асмокод в бин и перепишу бин в другой бин через sublime text?
Похожие вопросы
- язык программирования. какой язык программирования лутьше изучать: C, C++, C#, Java?
- Начинаю заниматься программирование в 17 лет, не знаю абсолютно ничего в программировании, посоветуйте с какого языка на
- Какой язык программирования лучше изучать: C++ или C# ?
- Какой из языков программирования лучше, приоритетнее C++ или Pyton (простота, частота использования и тд.)?
- Я вот выучил c++ и знаю все основы кода в нем.
- Учу C++! Уже знаю: типы данных, циклы. условия, привидения и т. д учу 5дней. вот программа! Как норм за 5 дней?
- Какой был ваш первый язык программирования? И сколько всего вы знаете ЯП?
- Насколько хорошо нужно знать язык чтоб написать слабенький вирус на С++
- Впервые открыла Visual C++ и уже целый час не могу написать простейшую программку
- Как на языке Si написать програму, котору у меня бы купили?