Может, тут фишками какими делиться или интересными вопросами для студентов?

Я веду "Архитектуру ЭВМ и систем", поэтому это очень актуально

Ощущаю дефицит в коротокоформлируемых, но требующих некоторое понимание, вопросах. Типа.
1. Создаем в Паскале короткий (но лучше длинный, если время есть) цикл:
for i:=1 to 20 do
begin
a:=a+b;
b:=a+b;
end;
При выполнении по шагам с удивлением обнаруживаем, что на первом проходе переменная i равна не 1, как мы написали в коде, а, наоборот, 20. Почему?
2. Что делает следующий ассемблерный код:
mov ch,5
mov ah, 51h
xor al,al
sub ah,ch
int 21h