Как компьютер понимает код: про компиляцию и интерпретацию
ฝัง
- เผยแพร่เมื่อ 19 พ.ย. 2023
- Онлайн-курс "Python Advanced. Продвинутый курс":
👉 wiki.merionet.ru/merion-acade...
О чем задумался, лягушонок? Не о том ли как компьютеры понимают код, который пишут программисты? Как удачно, ведь мы как раз хотели об этом рассказать! В этом видео ты узнаешь что такое ассемблер, компиляция и интерпретация.
Merion Academy - платформа доступного IT образования ❤️
wiki.merionet.ru/merion-academy
Наш Telegram канал:
t.me/it_knowledge_base
Креатив и анимация:
/ cine.vibe
#development #compiler #interpretation
Онлайн-курс "Python Advanced. Продвинутый курс":
wiki.merionet.ru/merion-academy/courses/python-advanced-prodvinutyj-kurs/?YT&
Все участники команды этого канала просто молодцы! Мемы, озвучка и монтаж на божественном уровне =)
Спасибо за добрые слова)
На ассемблере пишутся курсачи в вузах, в которых 30 лет не обновляли программу обучения)
Но это в рамках шуток, а так для многих низкоуровневых задач: микроконтроллеры, драйвера, ядра ОС, ну и для реверс инжиниринга
Область приминения полноценного ассемблера сильно сужается - так, как раньше, на нём уже никто не пишет. Чаще приминяется подход с разделением ответственностей, когда исходная логика описывается на языке по типу Си, прогоняется через "так себе" компилятор под специфичную платформу, а готовый ассемблерный код правится ручками в случае каких-то особых требований. В случае с гигантами типа gcc или msvc, там вообще надо сильно постараться, чтобы ручной код обогнал компиляторный, а не наоборот.
Так же стоит учитывать приминимость его знаний при отладке или оптимизации некоторых вещей - если, к примеру, создаётся какой-нибудь сложный контейнер, со своей логикой, полезно посмотреть во что превращается эта самая логика по итогу.
Если брать пример с драйверами - честно говоря очень давно не видел, чтобы производители оборудования оставляли исходники своих драйверов на ассемблере, чаще на Си или вообще Си++. Сейчас почти любой микроконтроллер, любого устройства умнее, быстрее и располагает большей памятью, нежели космические шатлы 70х, поэтому реальным подсчётом байтов люди давно перестали заниматься.
Если брать во внимение реверс инжиниринг - тут так же как и с остальным по, давно существуют неплохие декомпиляторы и деобфускаторы, которые сделают за вас 70% работы. Но тут уже без ручного ассемблера точно не обойтись.
Ну и нельзя опускать соревновательную ветку, когда люди умещают в пару килобайт целые сцены, видео, игры или вирусы)
Согласен,я далеко не эксперт и пока только на втором курсе,будущий инженер автоматизированных систем(типа робототехник),и то что я вижу и слышу в этой сфере...Си,ардуино и графические программы делают всё, ассемблер давно нигде в таком плане не используется, ну я не встречал 🤷
Я стал обворожительнее на 1,46%❤
Подтверждаем!🥰
Ассемблер нужно учить для реверс-инжиниринга
Если знаешь ассембли, любой софт для тебя становится open source
Ассемблер используют в программировании микроконтроллеров. ATmega например.
Я C++
В принципе для всего низкоуровневого, дрова тоже на ассемблере пишутся(ну не только на нем конечно же).
@@PSP-uf5fwсейчас уже дрова на сиськах большинство
@@relax_FM_1 главное чтоб не на письках
я ждал это видео 6 лет, наконец-то
Это просто Божественный канал 😇 Спасибо за труды! ✊
Вам спасибо за приятные слова! Если подпишитесь, поставите лайк и покажете это видео друзьям, мы станем чуточку счастливее 🙂
Тут пишут, про работу с реверс-инжинирингом и работы с микроконтроллерами(наверное, современными), но должен сказать, что ассемблер, скорее всего ещё и используется для старых микроконтроллеров, для тех-же автоматических гаражных дверей. Задача программиста подружить старый код с новыми девайсами и привести систему в современный, совместимый вид.
для микроконтроллеров щас чаще используют с/с++ ибо если слишком много логики то задолбаешься писать всё на ассемблере
Третий видос подряд смотрю на канале. Красавцы. Отличная подача казалось бы сложных тем
Асемблер - микроконтроллеры,загрузчики,системы(например колибри)ревёрс инженеринг
Проделали классную работу! Спасибо большое, очень полезно!
6:48 урааа, мерион упомянули C#!
Про него обязательно будет отдельный видос!
Божественная подача
Спасибо, и Вам везде золотого сечения)
вы такие суперские, я вас люблю, спасибо
А мы - вас 🖤
Ребят, ну круто! Вы единственные, кто может так хорошо преподносить материал да еще и с юмором! Успехов вам! Жду новые видео)
Вам спасибо за приятные слова! Если подпишитесь, поставите лайк и покажете это видео друзьям, мы станем чуточку счастливее 🙂
@@merionacademyесли верить словам из вашего видео теперь я стал на 1,46 % обворожительней 😉❤
Ну, если по честному, и вы до просмотра нашего видео были очень обворожительны!
в дополнение к комментаторам. ассемблер есть в программах, которым важно быстро и минималистично и с минимумом ошибок взаимодействовать с железом. ядро линукс, научный софт(в медицине, проектировке сооружений) - в таких программах небольшая часть кода на ассемблере
Спасибо, очень понятно
Круто!
Клаассс!!! Спасибо☺️
Лучше как всегда
спасибо за видео!!!
Я в восторге от подачи матерала!
а мы в восторге от вас и того как вы оформляете подписку на наш канал 😁
0:41 - транзистори это двери которые открывают путь к "бинарным командам"
8:16 в операционных системах и для компиляции кода программ
Практика показывает, что как инженеры лучше те спецы, которые начинали с древних языков, потом перешли на С и пользуются asm. Благодаря ним держится вся отрасль, все движки и все самое сложное написано именно ими для остальных специалистов уровня "по кнопочкам", которым остается только на нужные кнопочки нажимать, почти как операторам.
Если вы говорите про свою практику, не могли бы вы рассказать о своем профессиональном пути? А лучше скинуть ссылку на свой LinkedIn, чтобы люди, читающие ваш комментарий смогли убедиться, что вашему опыту можно доверять.
Я как то писал на ассемблере. В основном до чих пор для чпу машин станков, либл микроконтроллеров. 😅 легущонок в ит 10 лет но по прежнему смотрит вас.
Ассемблер используется в компиляции. Ассемблер, он как промежуточный язык компиляции, Сначала из СИ Шарп в Ассемблер, потом только в машинный. Вот так вот😊
Слышал, что Ассемблер используется в автомобильной тематике(Приборные панели, ЭБУ)
Спасибо вам❤
Вам спасибо! Если подпишитесь, поставите лайк и покажете это видео друзьям, мы станем чуточку счастливее 🙂
Ассемблер сейчас используется в реверс-инжениринге :)
Ребятки, спасибо за классные видео. А можно ли сделать видосик на тему Service Mesh Control Plane?
Ассемблер используется в любой оси) да и вообще асемб базированный батя всех языков, его хотяб в общих чертах знать нада
2 раза сегодня скомпилировал с разницей в несколько часов.
На асме пишутся драйвера и ядра для операционнок, ну и подобный код для прямой работы с железом.
Ну в общем низкоуровневый софт
Ассемблер используют для написания драйверов
Как раз еды нагрел. Спасибо)
Приятного аппетита!
В ассемблер как раз и компилируется/интерпретируется исполняемый код
8:20 на нём создаются новые языки
Assembler используется в программирование микроконтроллеров.
Ну асм сейчас актуален для реверса и взлома, все таки под микропроцессоры сейчас почти всё на C
Легухи требуют CIL ( 6:50 )
Я компилирую больше раз в день, чем раньше, потому что опять начал учиться программированию.
Компилирую по разному. В основном пропорционально выходу ваших видео...
а вы хорош)
Вот такие пироги😊
Молю, сделайте видео про chat GPT и вообще про нейросети!
Все будет, надеюсь вы подписались чтобы не пропустить
@@merionacademy конечно)
Можете снять видео как работает браузер
👍
Очень классный видео но пожалуйста объясните немного медленнее,🙏
Поставьте скорость поменьше просто)
Голос искажается и это мягко говоря не комфортно 😔, а сколько стоит ваш курс про Пайтон? Еслт я полный 0 могу научиться?
ну, реверс инженерия точно, ядра и драйвера возможно, но не обязательно, в современном мире программирования
Ждём про язык Rust
В скорпионе 🤣🤣🤣
Cisco свою IOS на ассемблере пишет до сих пор по-моему пишет
146% хороший ролик, например
асемблер используется для linux и unix системах
и всё?
Ну вроде на asambler пишут драйвера
Ассемблер используется на МКС
мне интересно до assembler какой язык программирования сущестовавл и как его создали если язык программирования до этого не было?
До ассемблера существовали перфокарты (такие картонные карточки с пробитыми в определенном порядке дырками), на которых были нанесены риски по которым в компьютер отправлялись или считывались двоичные матрицы (коды), проводились операции вычисления и записи. Потом перфокарты заменили клавиатурой, где каждая кнопка равна определенной команде. Далее эту "клавиатуру" просто записали в память процессора, которая и поныне зовётся регистром. Каждая внешняя команда имеет определенный символ (регистр), который вызывается из прошитой памяти и таким образом проводятся нужные операции вычисления.
Моя пепе и моя любить смотреть мерион академию.
🐸♥️
Я заядлый компилятор
Ждём видео про шарпы)))
Подпишитесь, чтоб не пропустить)
CIL ХОЧУ
А резве С++ не создает также промежуточный промежуточный код ?
Ну, есть так называемые объектные файлы, да это промежуточная ступень, но всё равно потом превращается в машинные инструкции.
Объектные файлы создают лексер и парсер вродею а потом компилятся
Вот такие пироги
Угощайтесь и подписывайтесь)
6:15 компилируется? Не интерпретируется?
Я делаю операционную систему на ассемблере
как назовёте?
гитхаб давай
@@merionacademySabiOS
Я работаю на php и мне норм) 😅
респект вам!)
я компилирую по 2-3 раза в день🥸
🥸
Можете объяснить, в чём прикол с отключением js на 2:18?
Неа, не можем!
@@merionacademy 🥺
На ассемблере драйверы некоторые пишут, так ведь?
В каждом ролике на эту тему одно и то же. Все говорят, что Цпу получает команду и из нее решает на какой из транзисторов отправить сигнал.
А как цпу определает, на какой из транзисторов отправить сигнал? Почему ни где об этом не говорят
Мені викладач з Основи Програмної Інженерії казав, що на Ассемблері пишуть драйвери. І взагалі типу: Вчи Ассемблер, будеш дрова писати, і гроші лопатою грести
дрова уже на C)
@@ill4374 🥲
2 раза
С++ быстрее Пайтона... С++ - компилируемый. Пайтон - интерпретированный
5ч назад
asm не нужен, когда есть C
Компилировали компилировали, да не выкомпилировали
всей командой теперь сидим и пробуем повторить, пока не получилось
Ассемблер используют в концлагерях для пыток
Кто пишет на C# ставьте лайк
Поставили!
Полагаю, Assемблер используется для создания компиляторов/интерпретаторов?
Это популярное ошибочное предположение 😏 Для создания компилятора используется тот же язык, который он будет компилировать, либо другой высокоуровневый язык 🤓Естественно, самую первую версию компилятора придётся написать на другом языке, для которого уже существует компилятор или интерпретатор, но совсем не обязательно использовать для этого ассемблер, когда мы имеем множество мощных высокоуровневых языков. После этого компилятор может быть переписан на новом языке и собирать себя сам. Это называется bootstrapping 📝
второй
😢
Сколько раз в день компилируешь...
Это как понять? Это личный вопрос?
Это обычный вопрос о компиляции 🤔Сколько раз в день вы компилируете свой код?
@@merionacademy Я пишу на интерпретируемых языках 😁
А где c#?
Про него скоро расскажем!
Ассемблеры используется для написания ОС
⁵⁵²
Дрова на ассемблере пишут
Дизлайк за хейт пиццы с ананасами
😑
Кто поставил 29 дизлайков признайтесь
Я
Кошмар.
Си
Си плюс плюс
Ахаха я поржал😂