【软件工程师学硬件】之 汇编

很多软件工程师对硬件语言有一个误解,也可能是听硬件大哥哥们说的。那就是学硬件必须要会汇编语言,汇编?那是个搞死人的语言,天书般的。实际上不然,今天我帮大家澄清一下吧。
首先,硬件语言并非只有汇编,可以C语言,也可以是python,甚至其它语言,如现在比较流行的arduino。但是不管什么语言,都可以转换成汇编语言,并最终编译成机器语言。
其次,汇编语言虽然运行效率高,但并非随便一段汇编的效率都很高,关键还是我们编码工程师,他们的经验和智慧才能让代码具有高效率。
其三,汇编语言可以嵌入到高级语言中,也就是两个混合着用,这样有个好处,比如,有的定时器要求高精度丶微秒级,如果用高级语言,会有很多的冗余指令,这些冗余指令给编写程序和编译带来方便,但是它也会占用一定的时间,这就会给定时结果带来一定的误差。为了尽可能减小误差,同时又能充分发挥高级语言的方便性,将汇编语言嵌入到高级语言中混合编译是一个通用的丶行之有效的办法。
其四,汇编语言并非我们想象中的那么晦涩,反之,它也很有趣,而且更直接,它直接操作机器指令,直接操作寄存器,只是每一种单片机由于机器指令不一样,汇编语句也会有些区别,但是整体来看大同小异。
整之,如果仅仅玩玩硬件,完全可以不需要了解汇编,如果想做一款性能要求高的或者成本比较低的产品,学一点汇编还是必要的。

猜你喜欢

转载自blog.csdn.net/wwwmagic/article/details/91491439