what is the difference between jump to a function and jump to the isr? what are the steps involved? (discuss regarding return also)
The concept of the "function" call & return is pretty fundamental whatever architecture you use, and whatever language. It is also important to understand the difference from an "unstructured" jump.
I am not suggesting to scrap the teaching of concepts. I'm just trying to say that once you intruduce a concept, you should show how it works within a certain architecture. This will show the students the practical significance of the concept and help keep them interested.