ZHCU875Z August 2001 – October 2023 SM320F28335-EP
Example8-7 定义了一个名为“.section_to_be_verified”的段,其中包含来自 a1.c.obj 文件的 .text 数据。crc_table() 运算符请求链接器计算 .text 数据的 CRC 值,并将该值存储在名为“my_crc_table_for_a1”的表中。此表将包含调用用户提供的 CRC 计算例程所需的所有信息,并验证在运行时计算的 CRC 是否与链接器生成的 CRC 匹配。可使用符号 my_crc_table_for_a1 从应用程序代码访问此表,该符号应声明为“extern CRC_TABLE”类型。该符号将由链接器定义。应用程序代码可能类似于以下代码。
#include "crc_tbl.h"
extern CRC_TABLE my_crc_table_for_a1;
verify_a1_text_contents()
{
...
/* Verify CRC value for .text sections of a1.c.obj.*/
if (my_check_CRC(&my_crc_table_for_a1)) puts("OK");
}
节 C.3 中详细显示了 my_check_CRC() 例程。