I'm writing a CRC32 program in assembler on an ARM "beagleboard", and for it I need to find the end of a char array in memory. The program is given (from a C framework) a pointer to the start of the array, and we need to iterate over the array. It is not known beforehand how large the array will be, and I'm not sure I'm allowed to check that in C and give that to the function as a variable, or even how that would work. Normally if I was coding this in C I'd just look for'\0', but when accessing this from RAM in assembler, that's just going to look like a byte full of zeroes. Is that still useful? Is there another way to detect the end of the array?
Thanks in advance!