Kids can start learning basic programming skills at primary school. At that age I was re-writing games from a book into my BBC giving me a decent understanding.
Nowadays there are things like Scratch http://scratch.mit.edu/ which is accessible to an even wider audience of teachers (the kids will pick it up fine)... However a programming literate primary teacher is even more rare than a secondary one.
You are more likely to find programming skills in a maths lesson at schools if they take them in to the computer room to teach Logo.
As for teaching Assembly - a lot of universities dont cover Assembly anymore. I believe the Computing A Level may still have elements of it but only a few grammar schools and some indp. schools run the course anymore. It should still cover a reasonable amount of high level programming.
A level ICT isn't worth a lot, and don't get started on things like the OCR Nationals/DiDA.
Me: Ex-ICT Teacher > Software Developer > Pen Tester.