
比特币减半是通过调整矿工奖励实现的,其核心代码逻辑是计算当前区块高度对应的减半次数,并据此将初始奖励逐步右移(即除以2的N次方)。 以下是对代码工作原理的详细剖析:
nSubsidyHalvingInterval = 210000(定义在src/chainparams.cpp中),表示每21万个区块触发一次减半。
nHeight为当前区块高度(如第三次减半时的630000)。
第一次减半(210000区块):50 >> 1 = 25 BTC
第二次减半(420000区块):25 >> 1 = 12.5 BTC
第三次减半(630000区块):12.5 >> 1 = 6.25 BTC
每次减半后,奖励金额的二进制表示右移1位(即减半)。
2012年:50 → 25 BTC
2016年:25 → 12.5 BTC
2020年:12.5 → 6.25 BTC(第三次减半)
比特币减半的代码通过简单的整数除法和位运算,实现了去中心化的货币发行调控。其核心在于确定性计算和硬编码规则,确保全网节点无需信任即可达成共识。这一设计不仅体现了中本聪对密码学与经济学的深刻理解,也为区块链技术的后续发展提供了范式。
