Можно ли предположить, что в каждой инструкции соблюдается атомарность?например,
mov dword ptr [eax], 0
Движение либо прошло успешно, либо не произошло.нет прерывания в середине выполненной инструкции.
Правильно ли мое предположение?
Я знаю, что текущий процессор может выполнять инструкцию не по порядку, а компиляция будет генерировать коды не по порядку вУсловия оптимизации.И, следовательно, движение будет выполнено в том порядке, который я не написал.Но это не имеет значения, что меня беспокоит, когда одиночная инструкция выполнена, она не может быть прервана.
РЕДАКТИРОВАТЬ :
что ябеспокойство вызывает атомарность любой отдельной инструкции , а не специальной инструкции или ветви инструкций чтения-записи, я просто использую mov , например.
- В любое время, когда любое ядро процессора выполняет инструкцию (сложение, перемещение, сдвиг и т. Д.), Может ли выполнение быть прервано?
- Есть ли неопределенное состояние в регистреили память ( размер машинного слова ).
Или какая самая маленькая единица, которую аппаратное обеспечение может обеспечить атомарность?