Wrong! EXC_BAD_ACCESS can happen also, if the RAM overwrites itself, because it has heat or other stability problems. Many programs save pointers to functions and program data in the RAM. If the RAM overwrites itself, the OS does nothing, so it can be a hardware problem.
Wrong, yourself!
EXC_BAD_ACCESS is a failure caught by the virtual memory system, which sits at the level of the operating system! RAM overwriting itself would not cause such an error (at least directly) because that would occur at a lower level than the MMU!
And in this case the EXC_BAD_ACCESS occurred at memory address 0x0, which is almost certainly an attempt to access an uninitialized variable -- a software problem.