单片机编程的语言既可以用C,也可以用汇编。用汇编的优势主要是程序可以被编程者优化,而不是由编译器优化,这样就可以绝对可控,程序的安全性和执行速度受编程者水平限制,不过总的执行速度较C语言快,代码占程序存储器的容量较C语言小。这样,汇编程序更适合程序存储器和数据存储器较小的老式单片机。但是,汇编程序毕竟是机器语言的汇编助记符,所以存在指令难记,指令功能弱的缺点,造成学习困难。
C语言的优势与缺点正好与汇编相反。C语言毕竟是一种高级语言,具有较好的学习性,几乎不必记忆指令,学习容易,而且编译时的优化由编译器管理,一般不受编程者水平限制。由于机器优化的局限性,C语言总的执行速度较汇编语言慢,代码占程序存储器的容量较汇编语言大。这样,C程序更适合程序存储器和数据存储器较大的新式单片机。
建议初学者先使用C语言快速入门,然后再研究汇编语言,优化程序设计。