C 语言应该算是高级语言,在使用单片机的C语言进行编程时,只是由于增强了程序的可读性,对于逻辑设计比较方便才使用C语言的,一开始学习51时,一定是学习的汇编的,而汇编也不是单片机可以识别的,单片机可以识别的是机器语言,而机器语言的执行又与单片机或是CPU的架构有关,同样的机器语言,在ARM、X86或是51上是不同的含义,大多数情况下是不能通用执行的。单片机C语言到机器码的过程就是编译了,一般使用集成IDE如Keil,或是使用gcc. java、python、go等等也可以控制硬件,但是其底层是C语言写的,这些高级语言只是在调用。