Users can configure there code to compile different segments in full ARM mode and in thumb mode. At 41MHz, Thumb mode also allows a faster execution speed from flash since it can execute in a single cycle on the 16-bit bus. When interrupts occur and the user code is executing in Thumb mode, code will automatically switch to running in full ARM mode.