A method for bit and power allocation, comprising: determining a set of candidate modulation modes for sub-channels; constructing a signal-to-noise ratio, SNR, lookup table according to a predetermined target bit error rate, BER, the SNR lookup table containing a relationship of an SNR and the number of bits corresponding to a modulation mode in the set of candidate modulation modes at the predetermined target BER; obtaining normalized SNRs on the sub-channels; initializing the numbers of bits for the sub-channels; initializing powers for the sub-channels according to the numbers of bits for the sub-channels, the normalized SNRs on the sub-channels and the SNR lookup table; and adjusting both the numbers of bits and the powers for the sub-channels in accordance with a principle of maximizing power utilization rate, in order to obtain a result of the bit and power allocation for the sub-channels, wherein for an M-QAM modulation mode, the SNR lookup table is constructed with BER calculation formulas of SNR = [ erfc -1 ( 2BER t arg et)] 2 when the number of bits is 1; SNR = 3 + 3 erfc − 1 16 11 BER t arg e t 2 or SNR = 6 erfc − 1 12 5 BER t arg et 2 when the number of bits is 3; SNR = 2 3 2 2 p − 1 erfc − 1 2 p + 1 p 2 2 p − 1 BER t arg et 2 when the number of bits is 2p and p is a positive integer; and SNR = 31 48 2 2 p + 1 − 2 3 * erfc − 1 2 p + 1 2 p + 1 2 2 p + 1 − 1 BER t arg et 2 when the number of bits is 2p+1, p is a positive integer and p≥2, wherein BER target is the predetermined target BER, wherein for an M-PSK modulation mode, the SNR lookup table is constructed with BER calculation formulas of SNR = [ erfc -1 (2 BER t arg et)] 2 when the number of bits is 1; SNR = 2[ erfc -1 (2 BER t arg et)] 2 when the number of bits is 2; and SNR = erfc − 1 pBER t arg et / sin π 2 p 2 when the number of bits is p, p is a positive integer and p≥3, wherein BER target is the predetermined target BER. determining a set of candidate modulation modes for sub-channels; constructing a signal-to-noise ratio, SNR, lookup table according to a predetermined target bit error rate, BER, the SNR lookup table containing a relationship of an SNR and the number of bits corresponding to a modulation mode in the set of candidate modulation modes at the predetermined target BER; obtaining normalized SNRs on the sub-channels; initializing the numbers of bits for the sub-channels; initializing powers for the sub-channels according to the numbers of bits for the sub-channels, the normalized SNRs on the sub-channels and the SNR lookup table; and adjusting both the numbers of bits and the powers for the sub-channels in accordance with a principle of maximizing power utilization rate, in order to obtain a result of the bit and power allocation for the sub-channels, wherein for an M-QAM modulation mode, the SNR lookup table is constructed with BER calculation formulas of SNR = [ erfc -1 ( 2BER t arg et)] 2 when the number of bits is 1; SNR = 3 + 3 erfc − 1 16 11 BER t arg e t 2 or SNR = 6 erfc − 1 12 5 BER t arg et 2 when the number of bits is 3; SNR = 2 3 2 2 p − 1 erfc − 1 2 p + 1 p 2 2 p − 1 BER t arg et 2 when the number of bits is 2p and p is a positive integer; and SNR = 31 48 2 2 p + 1 − 2 3 * erfc − 1 2 p + 1 2 p + 1 2 2 p + 1 − 1 BER t arg et 2 when the number of bits is 2p+1, p is a positive integer and p≥2, wherein BER target is the predetermined target BER, wherein for an M-PSK modulation mode, the SNR lookup table is constructed with BER calculation formulas of SNR = [ erfc -1 (2 BER t arg et)] 2 when the number of bits is 1; SNR = 2[ erfc -1 (2 BER t arg et)] 2 when the number of bits is 2; and SNR = erfc − 1 pBER t arg et / sin π 2 p 2 when the number of bits is p, p is a positive integer and p≥3, wherein BER target is the predetermined target BER.