多项选择题

模块是可以组合、分解和更换的单元,是组成系统、易于处理的基本的单位。一个模块应具备以下要素()。

A.输入和输出
B.功能
C.内部数据
D.程序代码