Kanalcodierverfahren, bei dem die logische „1“ eines Bits durch einen Wechsel in der Polarität der Übertragungsspannung, eine logische „0“ durch keinen Wechsel der Polarität definiert ist. Dadurch ist der Code selbsttaktend, weist aber eine doppelt so hohe Frequenz wie das Originalsignal auf. Der Bi-Phase-Mark-Code wird z.B. bei der Aufzeichnung des LTC und bei der AES3-Schnittstelle verwendet.