eXeL@B —› Вопросы новичков —› Что такое MOV DWORD PTR SS:[EBP-4], X? |
Посл.ответ | Сообщение |
|
Создано: 04 мая 2016 21:01 · Личное сообщение · #1 Компилятор сгенерировал выхлоп простой функции. Не пойму, зачем тут нужен сабж, зачем там эти числа? EBP-4 в LOCAL.1 ( PTR SS:[LOCAL.1] ) Code:
|
|
Создано: 04 мая 2016 22:21 · Личное сообщение · #2 Здесь ebp - регистр-указатель на область локальных переменных, т.к. в настройках компилятора задано делать ebp-based функции. Начало таких функций всегда содержит Code:
Локальные переменные - это те, которые объявлены в теле функции, и место под них всегда выделяется на стеке! Адресовать локальные переменные в целях отладки удобнее через ebp, так просто принято. Как правило каждая переменная 4 байта, а если и нет, то по умолчанию адрес каждой всё равно будет выровнен по границе в 4 байта, потому там и [ebp - 4]. Учебник в руки и вперёд! ----- IZ.RU | Сообщение посчитали полезным: hitkg |
|
Создано: 04 мая 2016 23:17 · Личное сообщение · #3 |
|
Создано: 04 мая 2016 23:46 · Личное сообщение · #4 встречал такое. чтото компиляторно-специфичное может номер строки в блоке кода или типа того игнорируй в общем, особого смысла оно не несёт | Сообщение посчитали полезным: JST |
|
Создано: 05 мая 2016 00:46 · Личное сообщение · #5 |
|
Создано: 05 мая 2016 11:08 · Личное сообщение · #6 JST Не понятно было, что Вы хотели спросить. JST пишет: Мне не понятно, почему компилятор вставил сюда 14 вызовов Так бы и спрашивали... Тут уже ответили. Добавлю только, что обработчику исключения так понятнее, где происходит ошибка, если он умеет это обрабатывать. А больше смысла даже не для хендлера, а Вам же, при отладке было бы понятно, что происходит... Qt вставляет, видимо, много всего, не спросив, а надо ли это нам... Добавлено спустя 0 минут Но это не номер строки! ) ----- IZ.RU | Сообщение посчитали полезным: JST |
eXeL@B —› Вопросы новичков —› Что такое MOV DWORD PTR SS:[EBP-4], X? |