Да, конечно.Если вы только адресуете byte
, то вы должны быть в состоянии достичь любого адреса.(что имеет место в фрагменте кода: movsbl
- это байтовый доступ)
Кроме того, x86 обеспечивает несогласованный доступ к памяти даже для многобайтовых слов.(хотя, как правило, с затратами на производительность) Так что даже в этом случае адрес не должен быть кратным 4.
* Исключение составляют регистры SSE / AVX.Где вам нужно использовать явные смещенные mov
инструкции для смещенного доступа к памяти.