原创 《嵌入式系统软件设计中的数据结构》学习笔记(三)

2009-7-26 15:56 2410 5 6 分类: MCU/ 嵌入式
    算法是对问题求解过程的一种描述,是为了解决一个或一类问题给出的一个确定的、有限长的操作序列。算法可以用自然语言、数学语言或约定的符号语言来描述,也可以用计算机高级语言描述。
    一个正确的算法满足5个重要特征:
    1.有穷性
    算法中的操作步骤为有限个,且每个步骤都能在有限时间内完成。
    2.确定性
    对每种情况下算法都必须只有一条执行路径,且不会有二义性。
    3.可行性
    算法中每一操作都可以通过已经实现的基本操作运算有限次地实现。
    4.有输入
    一个算法可以有零个或多个输入量,这些输入量取决于算法中所要求的数据对象。没有输入量的算法一般输出结果是固定,或是一个特定的值,或是一串固定的符号。
    5.有输出
    一个算法必须有一个或者多个输出,这些输出是算法对输入进行运算的结果。如果一个算法没有输出,则算法无任何意义。
    可以从以下几个方面评价算法的优劣:
    1.正确性
    算法正确与否取决于是否满足解决实际问题的需要,要经得起一切可输入数据的考验。
    2.可读性
    算法是表示求解问题的步骤,所以算法要尽可能的简单通俗,便于理解。可以通过注释来增加算法的可读性。
    3.容错性
    算法要尽可能考虑各种可能出错的状况。
    4.高效率
    要求算法的执行时间尽可能短,对于存储空间的占用要尽可能少,即做到既省时又节省空间。通常时间与空间的利用有时相互制约,因此要根据具体情况对算法的要求有所侧重。
    嵌入式系统软件中数据结构的特点:
    1.数据规模较小;
    2.采用简单的数据结构;
    3.采用RAM资源占用较少的算法;
    4.采用程序代码简单的算法。
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

tengjingshu_112148725 2009-7-27 09:59

哈哈,支持
相关推荐阅读
用户518079 2011-05-14 00:13
嵌入式系统与FPGA的最新动向
嵌入式处理器:2011年有望增长12%,中国设计增幅高于全球   据Semico Reserch资深分析师Tony Massimini介绍[1],2010年,微逻辑组件(微处理器、微控制器和DSP)的...
用户518079 2011-05-14 00:11
苹果-三星的合作关系变质
苹果公司和三星公司一度曾是非常紧密的合作关系,不过现在,这两家公司却闹了起来,此举将较大幅度的降低三星公司市场份额。据报道,2010年苹果公司在三星订购了数量惊人的DRAM,NAND闪存以及其他半导...
用户518079 2011-05-14 00:10
英特尔3D晶体管引发的震动:ARM继续打低功耗牌么?
这两日,半导体产业界被一个消息所震撼:英特尔宣布自己将彻底告别传统的平面晶体管,只身进入一个3D架构、22nm制程的新纪元——这个芯片巨人新推出的处理器(代号Ivy Bridge),将由其自行研发的3...
用户518079 2010-12-19 22:00
经典回复!
( 我靠 ! )此回复虽有且仅有两个字,却深刻地表达了回复人的深深的祝福与刻骨的情感,可谓言简意赅,一字千金,字字扣人心弦,字字催人泪下,足可见回复人扎实的文字功底和信手拈来的写作技巧及惨绝人环的创新...
用户518079 2010-08-13 12:13
实例说明PID(转)
PID实指“比例proportional”、“积分integral”、“微分derivative”,如果我们要求被控制的对象最终趋于一个稳定的结果,一般就可以使用PID算法。假设说,有一辆速度为1m/...
用户518079 2010-08-13 12:06
延迟实现八位的PWM
八位的PWM:unsigned char i;while(1){        P1^1 = 1;        delay(i);        P1^1 = 0;        delay(256...
EE直播间
更多
我要评论
1
5
关闭 站长推荐上一条 /3 下一条