Delphius el kit de la cuestion es el parámetro "j" que es la longitud a comparar.
si la imagen tienen 16 bit de profundidad, para almacenar un pixel hace falta 2 bytes de memoria (2 bytes x 8 bits = 16 bits).
si la imagen tienen 24 bit de profundidad, para almacenar un pixel hace falta 3 bytes de memoria (3 x 8 = 24).
En el caso de 32 bits... más de lo mismo.
En el "else" estamos diciendo que es de una profundidad de 8 bits (1 byte) o inferior... pero como mínimo necesitamos un byte.
Como la Imagen empieza en el índice cero, hay que restarle uno (se podría sacar fuera del case, ya que siempre se hará
.
Saludos