В x86, если mem выровнена по 32 -битам, операция mov гарантированно будет атомарной.
если [mem] не выровнен по 32 -битам, может ли lock inc [mem]работать нормально?
lock inc [mem]
работают нормально :обеспечивают атомарность и не получают частичное значение.