A method for generating a codeword in a wireless communication system using a bit-interleaved coded modulation with iterative decoding, BICM-ID, using a binary code, wherein the BICM-ID is composed of an outer code based on an irregular repetition code and an inner code based on a trellis code, the method comprising: generating a codeword by encoding data using the irregular repetition code; interleaving the encoded codeword (S 110); inserting doping symbols into the interleaved codeword using the trellis code, the doping symbols values and locations in the codeword being known by both the sender and the receiver; calculating a number of first symbols to be punctured among symbols included in the codeword based on the locations of the symbols included in the codeword, wherein the calculating the number of first symbols comprises calculating the number of first symbols among the symbols based on a current code rate and a first target code rate of the codeword; if a target code rate is not smaller than a predetermined threshold, puncturing the first symbols located at one of even-numbered symbol positions or odd-numbered symbol positions among the symbols, calculating a number of second symbols which should be additionally punctured based on the number of the first symbols, determining a size of symbol groups on the basis of the number of second symbols which need to be punctured, classifying the second symbols into symbol groups based on the number of first symbols and at least one of a size and a number of symbol bands of the codeword, wherein symbol bands are sets of a predetermined number of consecutive code symbols including one doping symbol, determining a position of each of the symbol groups on the codeword, and puncturing the second symbols classified into the symbol groups according to the determined position; if the target code rate is smaller than the predetermined threshold, puncturing the first symbols included in the codeword so that the punctured symbols are uniformly arranged on the codeword; modulating the punctured codeword; and transmitting the modulated codeword. generating a codeword by encoding data using the irregular repetition code; interleaving the encoded codeword (S 110); inserting doping symbols into the interleaved codeword using the trellis code, the doping symbols values and locations in the codeword being known by both the sender and the receiver; calculating a number of first symbols to be punctured among symbols included in the codeword based on the locations of the symbols included in the codeword, wherein the calculating the number of first symbols comprises calculating the number of first symbols among the symbols based on a current code rate and a first target code rate of the codeword; if a target code rate is not smaller than a predetermined threshold, puncturing the first symbols located at one of even-numbered symbol positions or odd-numbered symbol positions among the symbols, calculating a number of second symbols which should be additionally punctured based on the number of the first symbols, determining a size of symbol groups on the basis of the number of second symbols which need to be punctured, classifying the second symbols into symbol groups based on the number of first symbols and at least one of a size and a number of symbol bands of the codeword, wherein symbol bands are sets of a predetermined number of consecutive code symbols including one doping symbol, determining a position of each of the symbol groups on the codeword, and puncturing the second symbols classified into the symbol groups according to the determined position; if the target code rate is smaller than the predetermined threshold, puncturing the first symbols included in the codeword so that the punctured symbols are uniformly arranged on the codeword; modulating the punctured codeword; and transmitting the modulated codeword.