Ну...по стандарту :) вы (в устройстве) обязаны поддерживать возможность чтения всех регистров одним фреймом. Наиболее элегантный обход этого требования - дырки в адресах.
Тогда имеете законное право матюкнуться exception'ом "нет такого регистра"
при попытке прочитать в один фрейм более одного "островка".
Но мне известны драйвера (не ОРС) принципиально игнорирующие "дырки" и всегда читающие один фрейм на одно пространство адресов.