The arm.developer.com states that "At Reset, Cortex-M3 and Cortex-M4 processors always boot from a vector table at address zero". How is it possible that f.e. STM32F446 has the vector table located at 0x0800 0000 address? I know about VTOR, but it doesnt seem that it is used there to do that.

Am I right that there is a bootloader thath changes the VTOR, basing on the BOOT pins of MCU?

Am I right that there is a bootloader thath changes the VTOR, basing on the BOOT pins of MCU?