1、C/A码
C/A码是由两个10级反馈移位寄存器相组合而产生的.

(1)码长Nu = 210-1=1023比特
(2)码元宽tu = 1/f1≈0.977752μs(相应距离 为293.1m)
(3)周期Tu = Nu tu = 1ms
(4)数码率=1.023Mbit/s
C/A码的码长易于捕获,且通过C/A码提供的信息,又可方便的捕获P码。C/A码的码元宽度较大。假设两个序列的码元对齐误差,为码元宽度的1/100,则相应的测距误差达2.9m,以因此也称粗码。
2、P码
P码产生的基本原理与C/A码相似,但其发生电路,是采用两种各由两个12级反馈移位寄存器构成的,情况更为复杂。线路设计细节均是保密的。
(1)码长Nu ≈ 2.35*1014比特
(2)码元宽度tu ≈ 0.0977752μs(相应距离 为29.3m)
(3)周期Tu = Nu tu ≈ 267
(4)数码率=10.23Mbit/s
P码周期被分为38部分(7天/每一部分周期,码长约为6.19*1012比特),其中1部分闲置,5部分给地面监控站使用,32部分分配给不同的卫星。这样,每颗卫星所使用的P码不同部分,便都具有相同的码长和周期,但结构不同。P码的码长较长,无法采用C/A码逐个进行搜索。一般都是先捕获C/A码,然后根据导航电文中给出的有关信息,捕获P码。
由于P码的码元宽度为C/A码的1/10,若取码元的对齐精度仍为码元宽度的1/100,则由此引起的相应距离误差为0.29m,仅为C/A码的1/10。所以P码定位精度高,故也称为精码。
3、测距码的调制(双相调制)