A memory circuit includes a plurality of word lines, a plurality of bit
lines, and a plurality of memory cells. Configurations of the plurality
of memory cells are determined depending on the data ("high" or "low")
which is stored in the memory cells. Data array such as a program stored
in the memory circuit is analyzed in advance. In the case where "high" is
the majority data, memory cells storing "high" are formed with vacant
cells in which a semiconductor element is not formed.