Вопрос № 48408: Уважаемые эксперты.
Я люблю смотреть ассемблерные коды, сгенирированые компилятором С++. Тут я поставил микрософт студию 2006 и посмотрел сгенирированный ей ассемблерный код и натолкнулся на новую команду
npad <Целочисленная костанта><...
Вопрос № 48.408
Уважаемые эксперты.
Я люблю смотреть ассемблерные коды, сгенирированые компилятором С++. Тут я поставил микрософт студию 2006 и посмотрел сгенирированный ей ассемблерный код и натолкнулся на новую команду
npad <Целочисленная костанта>
Пожалуста опишите кратко данную команду ассемблера.
Отправлен: 07.07.2006, 00:12
Вопрос задал: Melamed (статус: 2-ой класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Лысков Игорь Витальевич
Здравствуйте, Melamed!
У тебя включена отпимизация компиляции.
И как следствие, студия, для выравнивания на необходимую границу,
(часто это происходит в циклах), вставляет пустой код, который именует
в листинге как "npad" с указанием числа байт (дабы не смущать взгляд ненужным кодом)
Если посмотришь на код, то можно увидеть, например:
npad 2 - mov edi,edi
npad 3 - lea ecx,[ecx][00]
и т.д.
--------- Удачи!
Ответ отправил: Лысков Игорь Витальевич (статус: Студент)
Ответ отправлен: 07.07.2006, 13:53 Оценка за ответ: 5 Комментарий оценки: Понятно. А не лучще использовать команду процессора NOP оформленную
в соответсвующий макрос. Тогда и скорость выполнения программного кода
было бы быстрее