自底向上法,一类软件开发方法,需要通过编写驱动程序来实现。自底向上法是根据系统功能要求,从具体的器件、逻辑部件或者相似系统开始,凭借设计者熟练的技巧和丰富的经验,通过对其进行相互连接、修改和扩大,构成所要求的系统。该方法是从底层(具体部件)开始的,实际中无论是取用已有模块还是自行设计电路,其设计成本和开发周期都优于自顶向下法;但由于设计是从最底层开始的,所以难以保证总体设计的最佳性,例如电路结构不优化、能够共用的器件没有共用。应当说明的是,自底向上法并非一切从硬件开始设计,设计之初,依然要了解系统要求,设计中要保证系统功能的实现。所谓自底向上主要指在设计功能块时,应考虑如何使用现有器件。实际上在现代许多设计中,是混合使用自顶向下法和自底向上法的,因为混合应用可能会取得更好的设计效果。一般来说,自顶向下设计方法适用于设计各种规模的数字系统,而自底向上法适用于设计小型数字系统。首先从系统实现的最基础部分着手,由简单到复杂,逐层向上构造,直到最后得到所要的软件系统。在开发的每一阶段,系统开发者掌握的功能子程序越来越强,只是在最后一步才可得到整个系统。