Abstract: A data reading method in a semiconductor storage device capable of storing three- or multi-valued data in one memory cell, in which the state of each memory cell is classified into a plurality of sets to thereby detect what set the present storage state of the memory cell belongs to. That is, several kinds of voltage values are applied to each memory cell to detect whether a current flows in the memory cell or not in accordance with the magnitude of the voltage values to thereby judge the present storage state of each memory cell.