Shifts in the apparent charge stored on a floating gate (or other charge
storing element) of a non-volatile memory cell can occur because of the
coupling of an electric field based on the charge stored in adjacent
floating gates (or other adjacent charge storing elements). To compensate
for this coupling, the read or programming process for a given memory
cell can take into account the programmed state of an adjacent memory
cell. To determine whether compensation is needed, a process can be
performed that includes sensing information about the programmed state of
an adjacent memory cell (e.g., on an adjacent bit line or other
location).