看起来象是反向操作,但这却是清除寄存器位的最有效的方法。响应一个典型的中断请求时,SPI主控制器读取一个中断请求寄存器(USBIRQ或者EPIRQ),并利用不同的屏蔽位进行检查,以确定中断源。例如,测试SUDAVIRQ中断请求时,固件读取R11 (EPIRQ),将读取结果和00100000 (SUDAVIRQ位是第5位)进行“与”操作。程序一般会采用标识符来表示00100000,如bmSUDAV。一旦检测到IRQ位等于1,固件便可以将屏蔽值写回寄存器(SUDAVIRQ = bmSUDAV),只对需要清零的位清零。不改变写零的IRQ位。