Se trata de una estructura de tipo registro variable, es decir de acuerdo con la definición, el registro se compone de dos tipos de datos posibles pero solamente podrá almacenar uno de los 2,
un ejemplo siguiendo tu código:
Código:
procedure TForm1.Button1Click(Sender: TObject);
Type
TMem_Register = Record
Case Integer Of
1: (Check_Sum : WORD; );
2: (Crc_move : Array[1..2] Of Byte; );
end;
var
Temp_Ccitt : TMem_Register;
Crc_Ccitt : TMem_Register;
begin
Temp_Ccitt.Check_Sum:=5000;
Crc_Ccitt.Crc_move[1]:=2;
Crc_Ccitt.Crc_move[2]:=33;
end;
En este caso la estructura puede soportar una variable numérica de tipo Word o una matriz del tipo Byte de 2 posiciones.
Un Saludo.