A method of coding a current field macroblock in a B-frame, comprising: obtaining a reference frame picture list including multiple reference frame pictures; determining a reference frame picture index of the multiple reference frame pictures in the reference frame picture list based on display order information for the multiple reference frame pictures, reference frame picture index numbers being allocated in a display order to reference frame pictures whose display order is higher than a display order of a current frame picture and remaining reference frame picture index numbers being allocated in a reverse order to reference frame pictures whose display order is lower than the display order of the current frame picture, wherein the current frame picture includes the current field macroblock; reordering the reference frame picture index allocated to each reference frame picture in the reference frame picture list; obtaining motion vector information for the current field macroblock; characterized by alternately allocating reference field picture indexes that are increased by one to reference field pictures, starting from a reference field picture having a parity equal to a parity of the current field macroblock to a reference field picture having a parity different from the parity of the current field macroblock, while sequentially visiting the reference frame pictures according to the order of the reordered reference frame picture index; and performing motion compensation for the current field macroblock in the B-frame by using the reference field picture indicated by a reference field picture index and the motion vector information for the current field macroblock. obtaining a reference frame picture list including multiple reference frame pictures; determining a reference frame picture index of the multiple reference frame pictures in the reference frame picture list based on display order information for the multiple reference frame pictures, reference frame picture index numbers being allocated in a display order to reference frame pictures whose display order is higher than a display order of a current frame picture and remaining reference frame picture index numbers being allocated in a reverse order to reference frame pictures whose display order is lower than the display order of the current frame picture, wherein the current frame picture includes the current field macroblock; reordering the reference frame picture index allocated to each reference frame picture in the reference frame picture list; obtaining motion vector information for the current field macroblock; characterized by alternately allocating reference field picture indexes that are increased by one to reference field pictures, starting from a reference field picture having a parity equal to a parity of the current field macroblock to a reference field picture having a parity different from the parity of the current field macroblock, while sequentially visiting the reference frame pictures according to the order of the reordered reference frame picture index; and performing motion compensation for the current field macroblock in the B-frame by using the reference field picture indicated by a reference field picture index and the motion vector information for the current field macroblock.