Результаты поиска по запросу "assembly"
Можете ли вы расширить этот ответ? Например. включая некоторый контекст (это только для Linux?) и рассмотрите информацию в других комментариях.
ли считать счетчик программ на процессорах Intel напрямую (то есть без «хитростей») в режиме ядра или в каком-либо другом режиме?
@danielhc: Инструкция JNE также известна как JNZ - «Прыгай, если не ноль». В вашем случае будет выполнен переход, если регистр al не равен нулю.
от вопрос уже есть ответ здесь: `testl` eax против eax? [/questions/147173/testl-eax-against-eax] 8 ответовЯ смотрю на несколько небольших ассемблерных кодов и у меня возникают проблемы с пониманием инструкции TEST и ее использования. Я смотрю ...
Надеюсь, это поможет.
long getesp() { __asm__("movl %esp,%eax"); } void main() { printf("%08X\n",getesp()+4); }у esp указывает на значение перед настройкой стекового фрейма и имеет ли это какое-то значение между приведенным ниже кодом? void main() { __asm__("movl ...
проверка должна быть упрощена до:
поздно вечером на работе мы пытались понять, почему что-то не получается. Проверка проверки не удалась, когда это не должно было произойти. Мы закончили тем, что добавили оператор print к этому коду (дизассемблированный из Reflector для ...
Последовательность инструкций, выполняемых из двух потоков на одном ядре, не может быть предсказана. Ниже приведена возможная последовательность, когда оба потока пытаются выполнить i ++, но эффект эквивалентен выполнению i ++ один раз:
жный дубликат: Безопасны ли инкременты / декременты (var ++, var--) и т. Д.? [https://stackoverflow.com/questions/443500/are-incrementers-decrementers-var-var-etc-thread-safe] Можете ли вы описать для меня на уровне кода сборки, почему ...
@ Мэтью я ошибся, спасибо за исправление.
причина отказа от указателя кадра на 64-битных архитектурах по умолчанию? Я хорошо знаю, что он может быть включен, но почему GCC отключает его в первую очередь, когда он включен для 32-разрядных? В конце концов, у 64-битных регистров больше, ...
Он добавляет 4 к значению в R0 и использует его в качестве адреса для загрузки 32-битного значения в регистр R3
аюсь отладить сбой, который я испытываю в своем приложении. Трассировка стека указывает на инструкцию LDR в следующем формате (спасибо дизассемблеру): LDR R3, [R0,#4]Мой вопрос касается исходного компонента. Что означает # 4 во втором параметре? ...
Что делает этот ассемблерный код? (ТЕСТ, исключающее ИЛИ, JNZ)
1. TEST EAX,EAX JNZ SHORT program.004071902. XOR EAX,EAX JNZ SHORT program.00407190Пожалуйста, поправьте меня, если я ошибаюсь. Спасибо! :) Из моего понимания пока: JNZ это прыжок, если не равен нулю, он будет прыгать или нет в зависимости ...
Поведение ebp и esp в стеках с использованием функции с параметром
Я хочу узнать больше о стеке. Особенно, что происходит, когда вызывается функция с параметром. Для этого я пишу следующий код: #include <stdio.h> int sum(int d, int e, int f){ int result = d + e + f; return result; } int main(void){ int a = 5; ...
объединить два результата частичного умножения).
из них быстрее - val = val*10;или же val = (val<<3) + (val<<2);Сколько тактов делаетimul взять по сравнению со сменой инструкции?