I checked the data by 3dinfo, and it turns out that volume really have shifted to some extent after 3dvolreg.
befor 3dreg:
-- At sub-brick #0 '#0' datum type is short: 0 to 1761
-- At sub-brick #1 '#1' datum type is short: 0 to 1711
-- At sub-brick #2 '#2' datum type is short: 0 to 1689
-- At sub-brick #3 '#3' datum type is short: 0 to 1690
-- At sub-brick #4 '#4' datum type is short: 0 to 1689
-- At sub-brick #5 '#5' datum type is short: 0 to 1695
-- At sub-brick #6 '#6' datum type is short: 0 to 1698
-- At sub-brick #7 '#7' datum type is short: 0 to 1681
-- At sub-brick #8 '#8' datum type is short: 0 to 1686
-- At sub-brick #9 '#9' datum type is short: 0 to 1688
...
after 3dvolreg (-tshift 4):
-- At sub-brick #0 '#0' datum type is short: 0 to 1761
-- At sub-brick #1 '#1' datum type is short: 0 to 1711
-- At sub-brick #2 '#2' datum type is short: 0 to 1689
-- At sub-brick #3 '#3' datum type is short: 0 to 1690
-- At sub-brick #4 '#4' datum type is short: 0 to 1686
-- At sub-brick #5 '#5' datum type is short: 0 to 1692
-- At sub-brick #6 '#6' datum type is short: 0 to 1699
-- At sub-brick #7 '#7' datum type is short: 0 to 1685
-- At sub-brick #8 '#8' datum type is short: 0 to 1681
-- At sub-brick #9 '#9' datum type is short: 0 to 1691
...
So it seems:
a.when the input is the data after 3dvolreg, it is not necessary to add the 6 head-movement parameters in 3dcon;
b.when the input is the data before 3dvoreg, it is necessary to add the 6 parameters in 3dcon.
I am novice and thanks for advice!