1. A method of operating a non-volatile multi-bit memory device comprising: programming multi-bit memory cells included in one page of the device with page data including an error detection code based on the page data, and determining validity of the page data using the error detection code read from the multi-bit memory cells in response to an error during programming of the multi-bit memory cells, wherein the multi-bit memory cells in the one page are configured to store a single bit of the page data, wherein a plurality of pages are programmed with page data configured in alternating patterns of program and cormplimentary program data interspersed with erased data within rows of the plurality of pages.