Разбираемся в С изучая ассемблер

Перевод статьи Девида Альберта — Understanding C by learning assembly. В прошлый раз Аллан О«Доннелл рассказывал о том, как изучать С используя GDB. Сегодня же я хочу показать, как использование GDB может помочь в понимании ассемблера. Уровни абстракции — это отличные средства для построения вещей, но иногда они могут стать преградой на пути изучения. Цель этого поста состоит в том, чтобы убедить Вас, что для твердого понимания C, нужно так же хорошо понимать ассемблерный код, который генерирует Ваш компилятор C. Я сделаю это на примере дизассемблирования и разбора простой программы на С с помощью GDB, а затем мы используем GDB и приобретенные знания ассемблера для изучения того, как устроены статические локальные переменные в С.Читать дальше →

© Habrahabr.ru