Дмитрий, Вы студент?
Почитайте немного матчасть.

До того как процессор начнет выполнять написанный Вами код он еще много чего другого успевает сделать.
Что конкретно он делает можно понять из фоново подключаемых к проекту файлов
startup.asm и
init.asm (имена и расширения могут отличаться для различных видов компиляторов и процессоров).
Если Вы специально не подключаете к проекту свои версии этих файлов, то компилятор, в частности от KEIL'а, цепляет их из библиотеки, но если
Вам не подходит их стандартный алгоритм, то включив в проект файл(ы) с таким именем, будут автоматически компилироваться Ваша версия.