p code word of the msb and a p code word error of the lsb shown in fig3 are simultaneously corrected fig6 is an illustrative flowchart for explaining step 100 or 102 shown in fig5 in detail this flowchart has steps 110 126 for simultaneously correcting errors in the data of the msb and lsb and steps 128 130 for storing a sum of error corrected or error having data step 100 or 102 shown in fig5 will be described referring to fig6 in step 110 syndromes for the msb and lsb planes of a q code word or p code word received from a data input portion are calculated in step 112 it is determined whether errors exist in the data of the msb and lsb planes using the syndromes calculated in step 110 if no error is found in the data of the msb and lsb planes in step 112 the error correction procedure is terminated on the contrary if an error is found in the data of the msb and lsb planes it is determined whether errors exist in the data of the msb plane in step 114 if errors are found in the data of the msb plane it is determined whether the number of the generated errors is two or above in step 116 if the number of the errors is two or above a flag indicating an impossible error correction is generated in step 120 on the other hand if a single error.