主页 > imtokenusdt钱包 > 比特币减半代码是什么意思? 比特币减半意味着什么?
比特币减半代码是什么意思? 比特币减半意味着什么?
中易财经网8月27日电 比特币减半是比特币区块奖励减半的简称。 自2009年诞生以来,比特币走过了波澜壮阔的十年。 从交易所、矿机、投资者到媒体,比特币带动了加密货币行业形成了完整的生态系统。 比特币区块奖励减半,从供给端直接将货币供应量减半,这显然极大地说明了比特币在边际和投资者心理上的稀缺性。
比特币的区块奖励减半是比特币共识的一部分,直接写入比特币软件代码。
中本聪创建的比特币共识将区块奖励从50个比特币开始,每21万个区块减半,减半64次后区块奖励为0。
21万个区块的时间大约是四年,这也是币圈人士所说的四年减半的原因。 由于比特币减半事件被写入比特币软件代码,并由分布在全球的比特币全节点验证,其共识难以改变,这也是“In Code We Trust”的由来。
这6行代码定义的函数GetBlockSubsidy决定了比特币在不同区块高度的区块奖励。 中本聪创建的比特币共识将区块奖励从50个比特币开始,每21万个区块减半,减半64次后区块奖励为0。
21万个区块的时间大约是四年,这也是币圈人士所说的四年减半的原因。 由于比特币减半事件被写入比特币软件代码,并由分布在全球的比特币全节点验证,其共识难以改变,这也是“In Code We Trust”的由来。
比特币减半的逐行细分
申诉代码主要有几个函数和参数:GetBlockSubsidy、nHeight、Consensus.nSubsidyHalvingInterval、halving、nSubsidy。 它们的含义如下:
GetBlockSubsidy主要是当前区块高度下的区块奖励(nSubsidy);
nHeight为当前区块高度;
Consensus.nSubsidyHalvingInterval 是由比特币共识确定的区块奖励减半间隔。 这个值是一个常数,即 210000。
halvings为减半次数,整数变量,即nHeight/210000四舍五入;
COIN是一个常数下一次比特币减半的时间,是100000000,也就是说在比特币代码中,比特币的单位是聪。
nSubsidy 是区块奖励。
第 1239 行调用了 GetBlockSubsidy 函数。
1240行代码:halvings=nHeight/Consensus.nSubsidyHalvingInterval,计算当前区块对应的减半次数。 例如,在撰写本文时,区块高度为 629929,629929/210000=2.99,减半=2。 当区块高度达到630000时,减半=3。
第 1242 和 1243 行:if (halvings >= 64) return 0; 判断减半次数是否大于64次,如果减半次数大于等于64次下一次比特币减半的时间,则区块奖励为0。这也是来自比特币共识,只有64次减半,区块奖励为0在 64 次减半之后。
1245行代码 nSubsidy=50*COIN,比特币软件每执行一次代码,区块奖励设置为50*COIN,即5000000000。
1247行代码nSubsidy>>=halvings,这句话才是真正有效的比特币区块奖励减半代码。 >>= 是二元右移运算,nSubsidy>>=halvings 等同于 nSubsidy=nSubsidy 除以 2 的减半次方。
1248行代码返回当前节点的区块奖励值给比特币节点。