@IsQuazar
16 лет. Учусь.

С чего начать изучение низкоуровневых вещей?

В общем, хочется понять как работают низкоуровневые вещи, вроде стэка, кучи, как устроен exe-файл, или как работает компилятор и т.д. Программирую на delphi. Понимание указателей и т.п. - есть, также могу читать ассемблер.

Собственно, (1) существуют ли книги, где это описывалось бы? (2) Стоит ли мне сменить язык? (Смотрел в сторону плюсов, но язык не понравился. Также видел Rust, но на русском я мало чего нашел, а с английским плоховато. Ассемблер - углубляться нет желания :))
  • Вопрос задан
  • 324 просмотра
Решения вопроса 2
Rou1997
@Rou1997
Ничто не заменит "реальную" практику, поэтому лучше всего поработать по реверсной инженерии, на фрилансе немало подобных заказов, вотпришлось бы вам для нетривиальной задачи написать например свой дизассемблер, не возникло бы вопросов, как понять устройство exe-файла, сели бы и начали разбираться.

(1) существуют ли книги, где это описывалось бы?

Есть источники, упрощенно излагающие официальную документацию, но без практики все же недостаточно наглядно, а главное, смысла не будет в знаниях.

(2) Стоит ли мне сменить язык?

Сменить нет, добавить да, глубина знаний прямо пропорциональна их "ширине", по крайней мере при той схеме мышления, которая используется мозгом при реверсной инженерии.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Aquarius-Michael
@Aquarius-Michael
Программист и железячник
Низкоуровневое - это ассемблер. А С/С++ - язык среднего уровня. А ниже нижнего уровня только архитектура процессора да опкоды, и логические вентили. Думаю вам опкодить тоже нет желания. =)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы