作 者:河南师范大学物理与信息工程学院 李林功 李继凯 谷金宏
关键词:嵌入式系统 高级语言 基本性能 编程特点 【相关文章:[小技巧]怎样取得文件行数?】
摘 要: 随着嵌入式技术的普及推广,嵌入式系统高级语言编程势在必行。然而,人们在选择语言系统时往往具有很大的随意性。对价格、获取方便性等因素考虑较多,而对语言本身的技术因素考虑较少。文章从嵌入式系统高级编程语言特点入手,对高级语言的基本性能作简要总结,对目前比较流行的几种嵌入式系统编程语言——ada、c/c++、modula-2的基本技术性能进行分析比较;对java作简要介绍。 【扩展阅读:修改linux的最大文件描述符】
一、 嵌入式系统高级语言编程特点 【扩展信息:关于写日志 导入 小技巧】 随着嵌入式系统应用范围的不断扩大与嵌入式实时操作系统rtos(real time operating system)的广泛使用,高级语言编程已是嵌入式系统设计的必然趋势。因为汇编语言与具体的微处理器的硬件结构密切相关,移植性较差,既不宜在复杂系统中使用,又不便于实现软件重用;而高级语言具有良好的通用性与丰富的软件支持,便于推广,易于维护。因此高级语言编程具有许多优势。 (1) 通用性强。随着微处理器技术的不断发展,其功能越来越具体,种类越来越多,而不同种类的微处理器都有自己专用的汇编语言。这就为系统开发者设置了一个巨大的障碍,使得系统编程更加困难,软件重用无法实现;而高级语言一般与具体机器的硬件结构联系较少,比较流行的高级语言对多数微处理器都有良好的支持,通用性较好。 (2) 容易编程。随着嵌入式系统应用范围的不断扩大与应用层面的不断深入,系统规模越来越大,结构越来越复杂,设计变得越来越困难。一个系统内有多种微处理器已是常见的事情。这时,要用汇编语言编程不仅要求编程人员要对所有微处理器的汇编语言都了如指掌,而且随着任务复杂程度的不断提高,用汇编语言实现规模较大的任务难度极大;而高级语言的语意层次较高,且有丰富的程序库支持,因此,编写较复杂的程序相对简单。使用高级语言编程,不仅能够加快系统开发进程,节省大量时间,同时也有利于系统调试及维护工作。 (3) 容易阅读。由于汇编语言的语意层次较低,在阅读汇编语言程序时,往往要花费大量精力分析"细节"问题,如为什么把一个数据传送给一个寄存器,为什么把某个标志位清零等。当把注意力放在这些"细节"上的时候,往往又把程序的主线忘记了。因此,汇编语言程序不仅难写,而且难读。采用高级语言就可以很好地解决这些问题。因为高级语言的语意层次较高,表达方式更接近人们日常的思维方法,一些数学表达式可以直接用一条语句表达,程序的思路更加清晰、简捷。因此,程序也就容易阅读。 (4) 可移植性好。由于汇编语言与具体的微处理器密切相关,为某个微处理器设计的程序不能直接移植到另一个不同种类的微处理器上使用,因此,移植性差;而高级语言对所有微处理器都是通用的,因此,程序可以在不同的微处理器上运行,可移植性较好。这是实现软件重用的基础。 (5) 可维护性好。高级语言程序往往是模块化设计,各个模块之间的接口是固定的。因此,当系统出现问题时,可以很快地将问题定位到某个模块内,并尽快得到解决。另外,模块化设计也便于系统功能的扩充与升级。 (6) 直接支持中断管理。中断是嵌入式系统最重要也是最常用的信息交换方式,因此中断系统是否灵活,中断功能是否强大对系统的性能影响极大。在高级语言中,一般都有强大的中断管理机制,以便构建高效灵活的中断系统;而在汇编语言中,一般要由程序设计者自己编程来进行中断管理。这不仅增加了编程的难度,而且效果也不一定好。 (7) 支持软件重用。... 下一页