In the Teaching profession, at least here in the UK, teachers have to be qualified far in excess of what they teach. A Secondary (High School) teacher would be expected to have a degree in the subject they taught, and Primary (Elementary) school teachers have degrees too, and have to be proficient in all major subjects up to a good grade GCSE level (high school exit exams?, no real US wide equivalent).
Why? Because in order to teach something well, or indeed use something well, you have to understand it. This requires understanding the underlying structure, the chain of decisions before the one you are working with that led to it. In order to properly understand high level code, you must understand the layer upon which it is built, how it operates, where its strengths and weaknesses lie. This is recursive, to understand the layer beneath, you must understand the layer beneath that as well.
In the end, this is why the decent university/college courses in Computing ask for good maths ability before everything else, as that is effectively the bottom rung.
Maths -> Physics ->
-> Chemistry -> Materials -> Hardware Design -> Microcode -> Assembler
-> Bus Interfaces -> Peripherals
... Assembler -> Low Level -> High Level ->
... OS / Drivers -> API Level -> Applications -> User
If you lack knowledge in these areas, then your understanding is compromised beneath it. The closer to the level you operate another layer is, the more important it is to have a grounding in it.
So: Do you need to know assembler as a high-level coder? It will help.