The invention discloses a coder, a decoder, a coding method and a decoding method lowering flash bit error rate, belonging to the technical field of flash chip compilation. When the coder writes data,the coder determines whether a half of ''1'' are in written hot data, if yes, the coder inverts hot data and then writes in flash; and the coder determines whether a half of ''1'' in high page data or a half of ''0'' in low page data are in written cold data, if yes, the coder inverts the cold data and then writes in flash. When the decoder reads data, the decoder analyzes an inversion state of the read data, if a half of ''1'' exists in the inversion state, the decoder inverts the read data and then outputs, if not, the decoder directly outputs read data. The invention realizes the coding method and decoding method lowering flash bit error rate. Through adoption of the coder, the decoder, the coding method and decoding method, the error probability of data in flash is lowered, the original bit error rate is lowered, more accurate input is provided for existing correction code solutions, the decoding success rate is improved, so that the flash reliability is further improved.