A method for controlling a flash memory comprised by a user's communication device connectable to a host and written for mass storage with data to be stored (SS1, SSN, SS1N, SA, BE, S1N, S1ML), wherein - the flash memory is divided into blocks each comprising memory units (S1-SN) - a written memory unit (SS1) is rewritable if all memory units (S1, S2, SS1, SN) of the block of the memory unit (SS1) to be written are deleted before the memory unit (SS1) is written, characterized in that - deleted and not rewritten memory units of the flash memory have a value 0xFF, - wherein the communication device is connected to the host via an interface and information (IN1, IN2) about the number of successive memory units to be written, into which data to be transmitted is to be written, is retrieved from the interface by the communication device as information about the amount of data to be transmitted from the host to the flash memory and is evaluated for controlling the flash memory , - wherein the flash memory is further controlled to compare the values of the data of the flash memory with those of the data to be written, based on a differentiation of whether the value of each byte of the data to be written is different from the value of each byte of the deleted memory units to be written, - wherein the flash memory is controlled such that in the event that the data to be written differs from the values of the single bytes of the data of the deleted memory units, no new deletion of the memory units is performed, - wherein the flash memory is controlled in such a way that at least a part of memory units (S1-SN) to be written, whose data (SG, SS1N, SAI, BEI, S1MLG) are unchanged after writing compared to before writing, is neither deleted nor written, - wherein the deleted memory units or part thereof to be written are not deleted again and only data different from the data of deleted memory units or part thereof are written, and - wherein the information (IN1, IN2) is present in the interface to the host independently of a cache or a memory controller. - the flash memory is divided into blocks each comprising memory units (S1-SN) - a written memory unit (SS1) is rewritable if all memory units (S1, S2, SS1, SN) of the block of the memory unit (SS1) to be written are deleted before the memory unit (SS1) is written, - deleted and not rewritten memory units of the flash memory have a value 0xFF, - wherein the communication device is connected to the host via an interface and information (IN1, IN2) about the number of successive memory units to be written, into which data to be transmitted is to be written, is retrieved from the interface by the communication device as information about the amount of data to be transmitted from the host to the flash memory and is evaluated for controlling the flash memory , - wherein the flash memory is further controlled to compare the values of the data of the flash memory with those of the data to be written, based on a differentiation of whether the value of each byte of the data to be written is different from the value of each byte of the deleted memory units to be written, - wherein the flash memory is controlled such that in the event that the data to be written differs from the values of the single bytes of the data of the deleted memory units, no new deletion of the memory units is performed, - wherein the flash memory is controlled in such a way that at least a part of memory units (S1-SN) to be written, whose data (SG, SS1N, SAI, BEI, S1MLG) are unchanged after writing compared to before writing, is neither deleted nor written, - wherein the deleted memory units or part thereof to be written are not deleted again and only data different from the data of deleted memory units or part thereof are written, and - wherein the information (IN1, IN2) is present in the interface to the host independently of a cache or a memory controller. <EOS>