Я пытался выяснить, как загружать/сохранять маску с помощью ushorts, в качестве эксперимента, а не фактического требования.
Нет API вызов MaskLoad/MaskStore, который принимает указатель на ushort, поэтому я подумал, что вам, возможно, придется просто сделать это с указателем int?, что я и попытался сделать ниже.
Что касается TestUShort, я установил смещение от начала массива, чтобы пропустить первые два ushort
ushort* address = ptr + 2;
Затем я создал маску,
[0xFFFF0000, 0xFFFFFFFF, 0, 0xFFFFFFFF, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF]
который, как я думал, будет вести себя следующим образом (X включается, 0 маскируется)
[X,0, X,X, 0,0, X,X, 0,0, X,X, X,X, X,X]
Так я и ожидал
0, 0
Подробнее здесь: https://stackoverflow.com/questions/787 ... of-ushorts