Buenas. Dado el ejemplo de la letra:
clave.valor = 0x71 = 0...01110001
clave.largo = 7
Me queda claro que cuando nrot = 2, el resultado debe ser: 0...01000111, y se mantiene el largo de la clave.
Me surgen dos preguntas sobre lo que se quiere que haga la función:
- Si nrot = 3, veo que el valor de Clave_t debería ser 0...00001111, ¿debemos actualizar también la propiedad valor de la Clave_t devuelta no? En este caso pasaría a valer 4.
- En el ejemplo dado con nrot = 2, el largo de la clave no cambia a medida que se rota. Sin embargo, si nrot = 4, ¿la cuarta rotación se sigue haciendo sobre un buffer circular del largo original? ¿O se va actualizando el largo del buffer circular a medida que rotamos y cambia el largo de la clave? Por ejemplo, en este caso, si se hiciera de la primera manera, el valor resultante serìa 0...011110 y de la segunda sería 0...001111. Me imagino que es de la primera manera, pero quisiera confirmar.
Gracias desde ya,
Carlos.