A、如果位于两对同源染色体上,则一个精原细胞经减数分裂只能产生了2种4个精子,A错误;B、如果位于一对同源染色体上,由于同源染色体间的非姐妹染色单体能发生部分交叉互换,所以一个精原细胞经减数分裂能产生基因型分别为AB、aB、Ab、ab4个精子,B正确;C、如果位于一对同源染色体上,由于同源染色体间的非姐妹染色单体能发生部分交叉互换,所以一个精原细胞经减数分裂能产生基因型分别为AB、aB、Ab、ab4个精子,C错误;D、根据B项分析,这两对等位基因位于一对同源染色体上,D错误.精子.