嵌入式软件设计(汇编语言——上电后的第一句执行语句)

Posted 费晓行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式软件设计(汇编语言——上电后的第一句执行语句)相关的知识,希望对你有一定的参考价值。

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        不知道现在的计算机专业是否还开设汇编语言这门课程,至少在20年前,也就是2002-2003年的时候,汇编语言作为《微机原理与接口技术》这门课程一起教授的。汇编语言和cpu相关,比如x86和arm,两者的差别很大。当然,就算同一种cpu,windows格式的汇编和linux格式的汇编也是有些许的差异。时至今日,很多计算机课程都被取消、或者改成了非专业课,比如汇编语言,这导致很多同学认为汇编不再重要,事实上并非如此,至少在嵌入式软件设计这块,情况并不是这样。

        相比较c、c++语言,汇编可以解决更复杂的问题。除此之外,它会让开发者对整个系统的稳定性和性能有更全面的认识和理解。

1、嵌入式系统main函数之前都是汇编语言

        不管是51、mcu,还是大的soc,在cpu进入main函数运行之前,都会有1到若干个汇编文件执行。通常它的作用是这样的,

关掉中断
设置中断向量表
关掉tlb
关掉mmu
关掉cache
bss清0
准备堆栈空间
跳转到main函数

2、部分特殊指令并不能由编译器生成

        一般来说,一般c语言都是可以由编译器

以上是关于嵌入式软件设计(汇编语言——上电后的第一句执行语句)的主要内容,如果未能解决你的问题,请参考以下文章

在发明电脑时,BIOS程序是用啥语言写的?BIOS程序是如何执行的?其原理是啥?

ThinkPHP里怎么直接执行一句SQL语句

循环 和 宏

第一章总结

C 流程语句

常识性概念