In Windows, if you write a random assembly program that has a random jump to an address that doesn't exist, the program crashes and Windows says something went wrong with the program.
Since each computer system is essentially a constant execution of assembly, how does the one program crashing not cause the entire system to crash with it?