Конечно, тип указателя не указан, неясен размер данных, куда заносится это значение. Я точно не знаю, что произойдёт, но либо ошибка, либо возьмётся размер по умолчанию (скорей всего, в зависимости от разрядности системы под которую ассемблер).
Вот если бы ты так регистр записывал - то указатель указывал был бы на область размера регистра, а тут константа и неизвестно какого она типа.
Вот как будут выглядеть два байта по адресу SI после записью разными способами:
mov byte ptr [SI],0C2h ; [SI]: C2 ?? (второй байт не изменился)
mov word ptr [SI],0C2h ; [SI]: C2 00 (второй байт 00, потому что значение теперь занимает 2 байта и выглядит как 00C2h)
Т.е. в первом случае указатель был на байт, во втором - на слово.