include, что это? - ХЗ.
Таким словом подключается внешний файл, в котором может быть что угодно. Удобно в отдельный файл выделить отлаженные подпрограммы, ту же паузу.
def temp - аналогично.
это директива (указание) программе назвать регистр R21 словом temp (временный) и в тексте программы вместо R21 писать temp. Удобно вот для чего - вдруг вам надо будет сменить регистр. Так вы его поменяете только тут - и он автоматом изменится везде. А иначе придется менять ручками, а ну как где забудете поменять - работать не будет.
cseg - тож самое.
Это указание разместить код в кодовом сегменте (еще есть сегменты данных (ОЗУ) и ПЗУ)
org - опять.
Это опять директива асемблера, говорит с какого адреса должен начаться код в кодовом сегменте
org INT0addr - ХЗ.
Это указание на адрес вектора прерываний INT0
reti - ХЗ.
это мнемоника означает "выход из подпрограммы обработки прерывания"
start: cli - начать что? - ХЗ.
эта мнемоника сбрасывает флаг прерываний
ldi temp,low(RAMEND) - ваще матюги какие то!
out SPL,temp - выход чего?
и т.д... и т. п.
Это инициализация стека.
Я абсолютно точно и кратко ответил на ваши вопросы, но уверен, что от этого их стало только больше, потому что для ответа мне пришлось использовать кучу незнакомых слов. Я мог бы расписать и их, но зачем делать то, что уже сделано и гораздо лучше. Я снова говорю про курс Ди Халта на изиэлектроникс. Тот способ обучения, который предложен в этом блоге, мне не нравится. Он не структурирован, обучение с "середины" считаю скорее вредным, чем полезным, поэтому и не участвовал в дискуссии.