Требуется проверить все регистры? Тогда можно записать в каждый последущий регистр значение предыдущего и проинвертировать. По окончании посмотреть результат. Правда в таком случае не узнаем какой регистр неисправен.
ldi R16,0x55
com R16
mov R0, R16
com R0
mov R1, R0
com R1
.
.
.
cpi R31, 0xAA
err: brne err
Или проверять в шахматном порядке
для R0 и R16 соответственно:
ldi R16,0x55
mov R0, R16
com R0
mov R16, R0
cpi R16, 0xAA
err: brne err
и т.д. перебрать по парам.