From 6f6c5e0a6791c04211165f3d346bbda2c1de72ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Tue, 15 Oct 2024 10:49:42 +0800 Subject: [PATCH] Expressed as Datoshi for small GAS fee --- docs/n3/fees.md | 96 +++---- .../n3/Advances/Neo VM instructions.md | 258 +++++++++--------- .../current/n3/fees.md | 100 +++---- 3 files changed, 227 insertions(+), 227 deletions(-) diff --git a/docs/n3/fees.md b/docs/n3/fees.md index 2cabb15..f884a4e 100644 --- a/docs/n3/fees.md +++ b/docs/n3/fees.md @@ -25,21 +25,21 @@ System fees include: ### Instruction fee -| Fee(GAS) | OpCode | +| Fee(Datoshi) | OpCode | | ---------- | ------------------------------------------------------------ | -| 0.00032768 | CALLT | -| 0.00008192 | VALUES, APPEND, SETITEM, REVERSEITEMS, CONVERT | -| 0.00004096 | PUSHDATA4 | -| 0.00002048 | MEMCPY, CAT, SUBSTR, LEFT, RIGHT, MODPOW, PACKMAP, PACKSTRUCT, PACK, UNPACK | -| 0.00000512 | PUSHDATA2, CALL, CALL_L, CALLA, THROW, NEWARRAY, NEWARRAY_T, NEWSTRUCT | -| 0.00000256 | NEWBUFFER | -| 0.00000064 | INITSLOT, POW, SQRT, HASKEY, PICKITEM | -| 0.00000032 | EQUAL, NOTEQUAL, MODMUL | -| 0.00000016 | XDROP, CLEAR, ROLL, REVERSEN, INITSSLOT, NEWARRAY0, NEWSTRUCT0, KEYS, REMOVE, CLEARITEMS, POPITEM | -| 0.00000008 | PUSHDATA1, AND, OR, XOR, ADD, SUB, MUL, DIV, MOD, SHL, SHR, BOOLAND, BOOLOR, NUMEQUAL, NUMNOTEQUAL, LT, LE, GT, GE, MIN, MAX, WITHIN, NEWMAP | -| 0.00000004 | PUSHINT128, PUSHINT256, PUSHA, TRY, TRY_L, ENDTRY, ENDTRY_L, ENDFINALLY, INVERT, SIGN, ABS, NEGATE, INC, DEC, NOT, NZ, SIZE | -| 0.00000002 | JMP, JMP_L, JMPIF, JMPIF_L, JMPIFNOT, JMPIFNOT_L, JMPEQ, JMPEQ_L, JMPNE, JMPNE_L, JMPGT, JMPGT_L, JMPGE, JMPGE_L, JMPLT, JMPLT_L, JMPLE, JMPLE_L, DEPTH, DROP, NIP, DUP, OVER, PICK, TUCK, SWAP, ROT, REVERSE3, REVERSE4, LDSFLD0, LDSFLD1, LDSFLD2, LDSFLD3, LDSFLD4, LDSFLD5, LDSFLD6, LDSFLD, STSFLD0, STSFLD1, STSFLD2, STSFLD3, STSFLD4, STSFLD5, STSFLD6, STSFLD, LDLOC0, LDLOC1, LDLOC2, LDLOC3, LDLOC4, LDLOC5, LDLOC6, LDLOC, STLOC0, STLOC1, STLOC2, STLOC3, STLOC4, STLOC5, STLOC6, STLOC, LDARG0, LDARG1, LDARG2, LDARG3, LDARG4, LDARG5, LDARG6, LDARG, STARG0, STARG1, STARG2, STARG3, STARG4, STARG5, STARG6, STARG, ISNULL, ISTYPE | -| 0.00000001 | PUSHINT8, PUSHINT16, PUSHINT32, PUSHINT64, PUSHT, PUSHF, PUSHNULL, PUSHM1, PUSH0, PUSH1, PUSH2, PUSH3, PUSH4, PUSH5, PUSH6, PUSH7, PUSH8, PUSH9, PUSH10, PUSH11, PUSH12, PUSH13, PUSH14, PUSH15, PUSH16, NOP, ASSERT, ASSERTMSG | +| 32768 | CALLT | +| 8192 | VALUES, APPEND, SETITEM, REVERSEITEMS, CONVERT | +| 4096 | PUSHDATA4 | +| 2048 | MEMCPY, CAT, SUBSTR, LEFT, RIGHT, MODPOW, PACKMAP, PACKSTRUCT, PACK, UNPACK | +| 512 | PUSHDATA2, CALL, CALL_L, CALLA, THROW, NEWARRAY, NEWARRAY_T, NEWSTRUCT | +| 256 | NEWBUFFER | +| 64 | INITSLOT, POW, SQRT, HASKEY, PICKITEM | +| 32 | EQUAL, NOTEQUAL, MODMUL | +| 16 | XDROP, CLEAR, ROLL, REVERSEN, INITSSLOT, NEWARRAY0, NEWSTRUCT0, KEYS, REMOVE, CLEARITEMS, POPITEM | +| 8 | PUSHDATA1, AND, OR, XOR, ADD, SUB, MUL, DIV, MOD, SHL, SHR, BOOLAND, BOOLOR, NUMEQUAL, NUMNOTEQUAL, LT, LE, GT, GE, MIN, MAX, WITHIN, NEWMAP | +| 4 | PUSHINT128, PUSHINT256, PUSHA, TRY, TRY_L, ENDTRY, ENDTRY_L, ENDFINALLY, INVERT, SIGN, ABS, NEGATE, INC, DEC, NOT, NZ, SIZE | +| 2 | JMP, JMP_L, JMPIF, JMPIF_L, JMPIFNOT, JMPIFNOT_L, JMPEQ, JMPEQ_L, JMPNE, JMPNE_L, JMPGT, JMPGT_L, JMPGE, JMPGE_L, JMPLT, JMPLT_L, JMPLE, JMPLE_L, DEPTH, DROP, NIP, DUP, OVER, PICK, TUCK, SWAP, ROT, REVERSE3, REVERSE4, LDSFLD0, LDSFLD1, LDSFLD2, LDSFLD3, LDSFLD4, LDSFLD5, LDSFLD6, LDSFLD, STSFLD0, STSFLD1, STSFLD2, STSFLD3, STSFLD4, STSFLD5, STSFLD6, STSFLD, LDLOC0, LDLOC1, LDLOC2, LDLOC3, LDLOC4, LDLOC5, LDLOC6, LDLOC, STLOC0, STLOC1, STLOC2, STLOC3, STLOC4, STLOC5, STLOC6, STLOC, LDARG0, LDARG1, LDARG2, LDARG3, LDARG4, LDARG5, LDARG6, LDARG, STARG0, STARG1, STARG2, STARG3, STARG4, STARG5, STARG6, STARG, ISNULL, ISTYPE | +| 1 | PUSHINT8, PUSHINT16, PUSHINT32, PUSHINT64, PUSHT, PUSHF, PUSHNULL, PUSHM1, PUSH0, PUSH1, PUSH2, PUSH3, PUSH4, PUSH5, PUSH6, PUSH7, PUSH8, PUSH9, PUSH10, PUSH11, PUSH12, PUSH13, PUSH14, PUSH15, PUSH16, NOP, ASSERT, ASSERTMSG | | 0 | ABORT, ABORTMSG, RET, SYSCALL | Reference: [ApplicationEngine.OpCodePrices.cs](https://github.com/neo-project/neo/blob/master/src/Neo/SmartContract/ApplicationEngine.OpCodePrices.cs) @@ -48,30 +48,30 @@ Reference: [ApplicationEngine.OpCodePrices.cs](https://github.com/neo-project/ne | **Interop Service** | Fee(GAS) | | ------------------------------------- | -------------------------------------------------------- | -| System.Contract.Call | 0.00032768 | +| System.Contract.Call | 32768 | | System.Contract.CallNative | Refer to native contract fee | -| System.Contract.IsStandard | 0.00001024 | -| System.Contract.GetCallFlags | 0.00001024 | -| System.Contract.CreateStandardAccount | 0.00000256 | -| System.Contract.CreateMultisigAccount | 0.00000256 | -| Neo.Crypto.CheckSig | 0.00032768 | +| System.Contract.IsStandard | 1024 | +| System.Contract.GetCallFlags | 1024 | +| System.Contract.CreateStandardAccount | 256 | +| System.Contract.CreateMultisigAccount | 256 | +| Neo.Crypto.CheckSig | 32768 | | Neo.Crypto.CheckMultisig | Dynamically calculated based on the number of signatures | -| System.Iterator.Create | 0.00000016 | -| System.Iterator.Next | 0.00032768 | -| System.Iterator.Value | 0.00000016 | -| System.Runtime.Platform | 0.00000008 | -| System.Runtime.GetTrigger | 0.00000008 | -| System.Runtime.GetTime | 0.00000008 | -| System.Runtime.GetScriptContainer | 0.00000008 | -| System.Runtime.GetExecutingScriptHash | 0.00000016 | -| System.Runtime.GetCallingScriptHash | 0.00000016 | -| System.Runtime.GetEntryScriptHash | 0.00000016 | -| System.Runtime.CheckWitness | 0.00001024 | -| System.Runtime.GetInvocationCounter | 0.00000016 | -| System.Runtime.Log | 0.00032768 | -| System.Runtime.Notify | 0.00032768 | -| System.Runtime.GetNotifications | 0.00000256 | -| System.Runtime.GasLeft | 0.00000016 | +| System.Iterator.Create | 16 | +| System.Iterator.Next | 32768 | +| System.Iterator.Value | 16 | +| System.Runtime.Platform | 8 | +| System.Runtime.GetTrigger | 8 | +| System.Runtime.GetTime | 8 | +| System.Runtime.GetScriptContainer | 8 | +| System.Runtime.GetExecutingScriptHash | 16 | +| System.Runtime.GetCallingScriptHash | 16 | +| System.Runtime.GetEntryScriptHash | 16 | +| System.Runtime.CheckWitness | 1024 | +| System.Runtime.GetInvocationCounter | 16 | +| System.Runtime.Log | 32768 | +| System.Runtime.Notify | 32768 | +| System.Runtime.GetNotifications | 256 | +| System.Runtime.GasLeft | 16 | Reference: @@ -93,21 +93,21 @@ Reference: | ------------------ | ----------------------- | ------------------------------------------------------------ | | ContractManagement | Deploy | Refer to storage fee. Minimum is 10 GAS. | | ContractManagement | Update | Refer to storage fee | -| LedgerContract | GetTransactionFromBlock | 0.00065536 | -| NeoToken | UnclaimedGas | 0.00131072 | +| LedgerContract | GetTransactionFromBlock | 65536 | +| NeoToken | UnclaimedGas | 131072 | | NeoToken | RegisterCandidate | Calculated dynamically. Default is 1000 GAS | -| NeoToken | UnregisterCandidate | 0.00065536 | -| NeoToken | Vote | 0.00065536 | -| NeoToken | GetCandidates | 0.04194304 | -| NeoToken | GetCommittee | 0.04194304 | -| NeoToken | GetNextBlockValidators | 0.04194304 | -| NeoToken、GasToken | Transfer | 0.00131072 | +| NeoToken | UnregisterCandidate | 65536 | +| NeoToken | Vote | 65536 | +| NeoToken | GetCandidates | 4194304 | +| NeoToken | GetCommittee | 4194304 | +| NeoToken | GetNextBlockValidators | 4194304 | +| NeoToken、GasToken | Transfer | 131072 | | OracleContract | Request | Calculated dynamically. The user specifies the fee when invoking. | -| StdLib | Deserialize | 0.00008192 | -| StdLib | JsonDeserialize | 0.00008192 | -| StdLib | Other | 0.00002048 | +| StdLib | Deserialize | 8192 | +| StdLib | JsonDeserialize | 8192 | +| StdLib | Other | 2048 | -The fee for other native contract methods not listed is 0.00032768 GAS. +The fee for other native contract methods not listed is 32768 Datoshi. Reference: [neo/SmartContract/Native](https://github.com/neo-project/neo/tree/master/src/Neo/SmartContract/Native) diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/n3/Advances/Neo VM instructions.md b/i18n/zh/docusaurus-plugin-content-docs/current/n3/Advances/Neo VM instructions.md index c3f22a0..446cde7 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/n3/Advances/Neo VM instructions.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/n3/Advances/Neo VM instructions.md @@ -48,7 +48,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHINT8, PUSHINT16, PUSHINT32, PUSHINT64, PUSHINT128, PUSHINT256 | | ------ | ------------------------------------------------------------ | | 字节码 | 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 | -| 系统费 | 0.00000001 GAS, 0.00000001 GAS, 0.00000001 GAS, 0.00000001 GAS, 0.00000004 GAS, 0.00000004 GAS | +| 系统费 | 1 Datoshi, 1 Datoshi, 1 Datoshi, 1 Datoshi, 4 Datoshi, 4 Datoshi | | 功能 | 向计算栈中压入一个整数,其位长度由本指令后的 8\16\32\64\128\256指定。 | #### PUSHT/PUSHF @@ -56,7 +56,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHT, PUSHF | | ------ | ---------------------- | | 字节码 | 0x08, 0x09 | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 向计算栈压入True/False | #### PUSHA @@ -64,7 +64,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHA | |----------|----------| | 字节码 | 0x0A | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 将接下来的四个字节转换为地址,并将该地址压入计算栈。 | #### PUSHNULL @@ -72,7 +72,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHNULL | |----------|------------------------------------------| | 字节码 | 0x0B | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 向计算栈中压入NULL值。 | #### PUSHDATA @@ -80,7 +80,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHDATA1, PUSHDATA2, PUSHDATA4 | | ------ | ------------------------------------------------------------ | | 字节码 | 0x0C, 0x0D, 0x0E | -| 系统费 | 0.00000008 GAS, 0.00000512 GAS, 0.00004096 GAS | +| 系统费 | 8 Datoshi, 512 Datoshi, 4096 Datoshi | | 功能 | 向计算栈中压入一个字节数组,其长度由本指令后的 1\|2\|4 字节指定。 | #### PUSHM1 @@ -88,7 +88,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSHM1 | | ------ | -------------------------------------- | | 字节码 | 0x0F | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 向计算栈中压入一个整数,其数值等于-1。 | #### PUSHN @@ -96,7 +96,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PUSH0\~PUSH16 | | ------ | ----------------------------------------- | | 字节码 | 0x10\~0x20 | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 向计算栈中压入一个整数,其数值等于0\~16。 | ### 流程控制 @@ -107,7 +107,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NOP | | ------ | ------------------------------- | | 字节码 | 0x21 | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 空操作,但是会使指令计步器加1。 | #### JMP @@ -115,7 +115,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMP | | ------ | ------------------------------------------------------- | | 字节码 | 0x22 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 无条件跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMP_L @@ -123,7 +123,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMP_L | | ------ | ------------------------------------------------------- | | 字节码 | 0x23 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 无条件跳转到指定偏移位置。偏移量由本指令后的4字节指定。 | #### JMPIF @@ -131,7 +131,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPIF | | ------ | ------------------------------------------------------------ | | 字节码 | 0x24 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶元素为true,而不等于0或null时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPIF_L @@ -139,7 +139,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPIF_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x25 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶元素为true,而不等于0或null时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPIFNOT @@ -147,7 +147,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPIFNOT | | ------ | ------------------------------------------------------------ | | 字节码 | 0x26 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶元素为false、0或者null时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPIFNOT_L @@ -155,7 +155,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPIFNOT_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x27 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶元素为false、0或者null时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPEQ @@ -163,7 +163,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPEQ | | ------ | ------------------------------------------------------------ | | 字节码 | 0x28 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当栈顶两个元素相等时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPEQ_L @@ -171,7 +171,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPEQ_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x29 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当栈顶两个元素相等时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPNE @@ -179,7 +179,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPNE | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2A | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当栈顶两个元素不相等时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPNE_L @@ -187,7 +187,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPNE_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2B | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当栈顶两个元素不相等时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPGT @@ -195,7 +195,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPGT | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2C | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素大于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPGT_L @@ -203,7 +203,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPGT_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2D | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素大于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPGE @@ -211,7 +211,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPGE | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2E | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素大于或者等于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPGE_L @@ -219,7 +219,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPGE_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x2F | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素大于或者等于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPLT @@ -227,7 +227,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPLT | | ------ | ------------------------------------------------------------ | | 字节码 | 0x30 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素小于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPLT_L @@ -235,7 +235,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPLT_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x31 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素小于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### JMPLE @@ -243,7 +243,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPLE | | ------ | ------------------------------------------------------------ | | 字节码 | 0x32 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素小于或者等于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的1字节指定。 | #### JMPLE_L @@ -251,7 +251,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | JMPLE_L | | ------ | ------------------------------------------------------------ | | 字节码 | 0x33 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 当计算栈栈顶第一个元素小于或者等于第二个元素时,跳转到指定偏移位置,偏移量由本指令后的4字节指定。 | #### CALL @@ -259,7 +259,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CALL | | ------ | ----------------------------------------------------- | | 字节码 | 0x34 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 调用指定偏移位置的函数,偏移量由本指令后的1字节指定。 | #### CALL_L @@ -267,7 +267,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CALL_L | | ------ | ----------------------------------------------------- | | 字节码 | 0x35 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 调用指定偏移位置的函数,偏移量由本指令后的4字节指定。 | #### CALLA @@ -275,7 +275,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CALLA | | ------ | -------------------------------------- | | 字节码 | 0x36 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 从计算栈栈顶取出函数地址,并调用该函数。 | #### CALLT @@ -283,7 +283,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CALLT | | ------ | -------------------------------------- | | 字节码 | 0x37 | -| 系统费 | 0.00032768 GAS | +| 系统费 | 32768 Datoshi | | 功能 | 从计算栈栈顶取出函数Token,并调用该函数。 | #### ABORT @@ -299,7 +299,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ASSERT | | ------ | ------------------------------------------------------------ | | 字节码 | 0x39 | -| 系统费 | 0.00000001 GAS | +| 系统费 | 1 Datoshi | | 功能 | 从计算栈栈顶取出元素,若该值为False,则退出虚拟机执行,并将虚拟机状态置为FAULT。 | #### THROW @@ -307,7 +307,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | THROW | | ------ | --------------------- | | 字节码 | 0x3A | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 抛出栈顶的异常。 | #### TRY @@ -315,7 +315,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | TRY | | ------ | --------------------- | | 字节码 | 0x3B | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 进入Try语句块,Catch和Finally地址偏移量分别由本指令后的1字节指定。 | #### TRY_L @@ -323,7 +323,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | TRY_L | | ------ | --------------------- | | 字节码 | 0x3C | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 进入Try语句块,Catch和Finally地址偏移量分别由本指令后的4字节指定。 | #### ENDTRY @@ -331,7 +331,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ENDTRY | | ------ | --------------------- | | 字节码 | 0x3D | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 结束Try块,然后无条件地将控制转移到特定的目标指令,目标地址偏移量由本指令后的1字节指定。 | #### ENDTRY_L @@ -339,7 +339,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ENDTRY_L | | ------ | --------------------- | | 字节码 | 0x3E | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 结束Try块,然后无条件地将控制转移到特定的目标指令,目标地址偏移量由本指令后的4字节指定。 | #### ENDFINALLY @@ -347,7 +347,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ENDFINALLY | | ------ | --------------------- | | 字节码 | 0x3F | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 结束Finally块,如果没有异常发生或捕获,则跳转到目标指令ENDTRY/ENDTRY_L,否则将向上层重新抛出异常。 | #### RET @@ -373,7 +373,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | DEPTH | |----------|------------------------------------------| | 字节码 | 0x43 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将栈元素个数压入计算栈。 | #### DROP @@ -381,7 +381,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | DROP | | ------ | ---------------------- | | 字节码 | 0x45 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 移除计算栈栈顶的元素。 | #### NIP @@ -389,7 +389,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NIP | |----------|------------------------------------------| | 字节码 | 0x46 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 移除计算栈栈顶的第二个元素。 | #### XDROP @@ -397,7 +397,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | XDROP | | ------ | -------------------------------------------------- | | 字节码 | 0x48 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 从计算栈栈顶获取到整数n, 移除计算栈剩余元素中索引为n的元素。| #### CLEAR @@ -405,7 +405,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CLEAR | |----------|------------------------------------------| | 字节码 | 0x49 | -| 系统费: | 0.00000016 GAS | +| 系统费: | 16 Datoshi | | 功能 | 清空计算栈。 | #### DUP @@ -413,7 +413,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | DUP | | ------ | ---------------------- | | 字节码 | 0x4A | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 复制计算栈栈顶的元素到栈顶。 | #### OVER @@ -421,7 +421,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | OVER | |----------|------------------------| | 字节码 | 0x4B | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 复制计算栈的第二个元素到栈顶。 | #### PICK @@ -429,7 +429,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PICK | |----------|------------------------| | 字节码 | 0x4D | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 从计算栈栈顶获取到整数n,并将计算栈剩余元素中索引为n的元素复制到栈顶。 | #### TUCK @@ -437,7 +437,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | TUCK | |----------|------------------------| | 字节码 | 0x4E | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 复制计算栈栈顶的元素到计算栈索引为2的位置。 | #### SWAP @@ -445,7 +445,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SWAP | |----------|------------------------| | 字节码 | 0x50 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 交换计算栈栈顶两个元素的位置。 | #### ROT @@ -453,7 +453,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ROT | |----------|------------------------| | 字节码 | 0x51 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 移动计算栈索引为2的元素到栈顶。 | #### ROLL @@ -461,7 +461,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ROLL | |----------|------------------------| | 字节码 | 0x52 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 从计算栈栈顶获取到整数n,并将计算栈剩余元素中索引为n的元素移动到栈顶。 | #### REVERSE3 @@ -469,7 +469,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | REVERSE3 | |----------|------------------------| | 字节码 | 0x53 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 反转计算栈栈顶前三个元素的顺序。 | #### REVERSE4 @@ -477,7 +477,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | REVERSE4 | |----------|------------------------| | 字节码 | 0x54 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 反转计算栈栈顶前四个元素的顺序。 | #### REVERSEN @@ -485,7 +485,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | REVERSEN | |----------|------------------------| | 字节码 | 0x55 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 从计算栈栈顶获取到整数n,并反转计算栈剩余元素中前n个元素的顺序。 | ### 槽操作 @@ -495,7 +495,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | INITSSLOT | | ------ | ------------------------------------ | | 字节码 | 0x56 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 初始化当前执行上下文的静态字段列表。 | #### INITSLOT @@ -503,7 +503,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | INITSLOT | | ------ | -------------------------------------------- | | 字节码 | 0x57 | -| 系统费 | 0.00000064 GAS | +| 系统费 | 64 Datoshi | | 功能 | 初始化当前执行上下文的参数槽和局部变量列表。 | #### LDSFLDN @@ -511,7 +511,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDSFLD0\~LDSFLD6 | | ------ | -------------------------------------------------- | | 字节码 | 0x58\~0x5E | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的静态字段压入计算栈,索引值为0\~6。 | #### LDSFLD @@ -519,7 +519,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDSFLD | | ------ | ------------------------------------------------------------ | | 字节码 | 0x5F | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的静态字段压入计算栈。索引表示为1字节的无符号整数。 | #### STSFLDN @@ -527,7 +527,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STSFLD0\~STSFLD6 | | ------ | -------------------------------------------------------- | | 字节码 | 0x60\~0x0x66 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入静态列表的指定索引处,索引值为0\~6。 | #### STSFLD @@ -535,7 +535,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STSFLD | | ------ | ------------------------------------------------------------ | | 字节码 | 0x67 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入静态列表的指定索引处。索引表示为1字节的无符号整数。 | #### LDLOCN @@ -543,7 +543,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDLOC0\~LDLOC6 | | ------ | -------------------------------------------------- | | 字节码 | 0x68\~0x6E | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的局部变量压入计算栈,索引值为0\~6。 | #### LDLOC @@ -551,7 +551,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDLOC | |----------|---------------------------------------| | 字节码 | 0x6F | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的局部变量压入计算栈。索引表示为1字节的无符号整数。 | #### STLOCN @@ -559,7 +559,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STLOC0\~STLOC6 | | ------ | ---------------------------------------------------------- | | 字节码 | 0x70\~0x76 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入局部变量表的指定索引处,索引值为0\~6。 | #### STLOC @@ -567,7 +567,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STLOC | |----------|---------------------------------------| | 字节码 | 0x77 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入局部变量表的指定索引处。索引表示为1字节的无符号整数。 | #### LDARGN @@ -575,7 +575,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDARG0\~LDARG6 | | ------ | ---------------------------------------------- | | 字节码 | 0x78\~0x7E | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的参数压入计算栈,索引值为0\~6。 | #### LDARG @@ -583,7 +583,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LDARG | |----------|---------------------------------------| | 字节码 | 0x7F | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将指定索引处的参数压入计算栈。索引表示为1字节的无符号整数。 | #### STARGN @@ -591,7 +591,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STARG0\~STARG6 | | ------ | ------------------------------------------------------ | | 字节码 | 0x80\~0x86 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入参数槽的指定索引处,索引值为0\~6。 | #### STARG @@ -599,7 +599,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | STARG | |----------|---------------------------------------| | 字节码 | 0x87 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 将计算栈栈顶元素存入参数槽的指定索引处。索引表示为1字节的无符号整数。 | ### 字符串操作 @@ -609,7 +609,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWBUFFER | | ------ | --------------- | | 字节码 | 0x88 | -| 系统费 | 0.00000256 GAS | +| 系统费 | 256 GAS | | 功能 | 创建缓冲区 | #### MEMCPY @@ -617,7 +617,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | MEMCPY | | ------ | --------------- | | 字节码 | 0x89 | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 内存复制 | #### CAT @@ -625,7 +625,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CAT | | ------ | --------------- | | 字节码 | 0x8B | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 拼接两个字符串 | #### SUBSTR @@ -633,7 +633,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SUBSTR | | ------ | -------------- | | 字节码 | 0x8C | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 获取子字符串。 | #### LEFT @@ -641,7 +641,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LEFT | | ------ | -------------------------------- | | 字节码 | 0x8D | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 获取字符串中指定位置左边的字符串。 | #### RIGHT @@ -649,7 +649,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | RIGHT | | ------ | -------------------------------- | | 字节码 | 0x8E | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 获取字符串中指定位置右边的字符串。 | ### 逻辑运算 @@ -659,7 +659,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | INVERT | | ------ | ---------------------------- | | 字节码 | 0x90 | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 对计算栈栈顶的元素按位取反。 | #### AND @@ -667,7 +667,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | AND | | ------ | -------------------------------------- | | 字节码 | 0x91 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个元素执行按位与运算。 | #### OR @@ -675,7 +675,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | OR | | ------ | -------------------------------------- | | 字节码 | 0x92 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个元素执行按位或运算。 | #### XOR @@ -683,7 +683,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | XOR | | ------ | ---------------------------------------- | | 字节码 | 0x93 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个元素执行按位异或运算。 | #### EQUAL @@ -691,7 +691,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | EQUAL | | ------ | -------------------------------------------------- | | 字节码 | 0x97 | -| 系统费 | 0.00000032 GAS | +| 系统费 | 32 Datoshi | | 功能 | 判断计算栈栈顶的两个元素是否相等。若相等,则返回1,否则返回0。 | #### NOTEQUAL @@ -699,7 +699,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NOTEQUAL | | ------ | ---------------------------------------------------- | | 字节码 | 0x98 | -| 系统费 | 0.00000032 GAS | +| 系统费 | 32 Datoshi | | 功能 | 判断计算栈栈顶的两个元素是否不相等。若不相等,则返回1,否则返回0。 | ### 算术运算 @@ -709,7 +709,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SIGN | | ------ | -------------------------------------------- | | 字节码 | 0x99 | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 获取计算栈栈顶的BigInteger的符号(负、正或零)。 | #### ABS @@ -717,7 +717,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ABS | | ------ | ------------------------------ | | 字节码 | 0x9A | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 求计算栈栈顶的BigInteger的绝对值。 | #### NEGATE @@ -725,7 +725,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEGATE | | ------ | ------------------------------ | | 字节码 | 0x9B | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 求计算栈栈顶的BigInteger的相反数。 | #### INC @@ -733,7 +733,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | INC | | ------ | ---------------------------------- | | 字节码 | 0x9C | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 将计算栈栈顶的BigInteger加1。 | #### DEC @@ -741,7 +741,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | DEC | | ------ | ---------------------------------- | | 字节码 | 0x9D | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 将计算栈栈顶的BigInteger减1。 | #### ADD @@ -749,7 +749,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ADD | | ------ | -------------------------------------- | | 字节码 | 0x9E | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个BigInteger执行加法运算。 | #### SUB @@ -757,7 +757,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SUB | |----------|----------------------------------------| | 字节码 | 0x9F | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 用计算栈第二个BigInteger减去第一个BigInteger。 | #### MUL @@ -765,7 +765,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | MUL | | ------ | -------------------------------------- | | 字节码 | 0xA0 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个BigInteger执行乘法运算。 | #### DIV @@ -773,7 +773,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | DIV | | ------ | -------------------------------------- | | 字节码 | 0xA1 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 用计算栈第二个BigInteger除以第一个BigInteger。 | #### MOD @@ -781,7 +781,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | MOD | | ------ | -------------------------------------- | | 字节码 | 0xA2 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 用计算栈第二个BigInteger除以第一个BigInteger取余。 | #### POW @@ -789,7 +789,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | POW | | ------ | ------------------------------------------------------------ | | 字节码 | 0xA3 | -| 系统费 | 0.00000064 GAS | +| 系统费 | 64 Datoshi | | 功能 | 用计算栈第二个BigInteger为底数,第一个integer为指数,求乘方。 | #### SQRT @@ -797,7 +797,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SQRT | | ------ | ------------------------------------------------------------ | | 字节码 | 0xA4 | -| 系统费 | 0.00000064 GAS | +| 系统费 | 64 Datoshi | | 功能 | 求计算栈第一个非负BigInteger的开方,并向下取整为BigInteger。 | #### SHL @@ -805,7 +805,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SHL | | ------ | -------------------------------- | | 字节码 | 0xA8 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 从计算栈栈顶获取到整数n,并对剩余计算栈栈顶的BigInteger执行左移n位运算。 | #### SHR @@ -813,7 +813,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SHR | | ------ | -------------------------------- | | 字节码 | 0xA9 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 从计算栈栈顶获取到整数n,并对剩余计算栈栈顶的BigInteger执行右移n位运算。 | #### NOT @@ -821,7 +821,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NOT | | ------ | ---------------------------------- | | 字节码 | 0xAA | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 对计算栈栈顶的元素执行逻辑非运算。 | #### BOOLAND @@ -829,7 +829,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | BOOLAND | | ------ | -------------------------------------- | | 字节码 | 0xAB | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个元素执行逻辑与运算。 | #### BOOLOR @@ -837,7 +837,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | BOOLOR | | ------ | -------------------------------------- | | 字节码 | 0xAC | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 对计算栈栈顶的两个元素执行逻辑或运算。 | #### NZ @@ -845,7 +845,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NZ | | ------ | ----------------------------------- | | 字节码 | 0xB1 | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 判断计算栈栈顶的BigInteger是否为非0值。 | #### NUMEQUAL @@ -853,7 +853,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NUMEQUAL | | ------ | -------------------------------------- | | 字节码 | 0xB3 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 判断计算栈栈顶的两个BigInteger是否相等。 | #### NUMNOTEQUAL @@ -861,7 +861,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NUMNOTEQUAL | | ------ | ---------------------------------------- | | 字节码 | 0xB4 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 判断计算栈栈顶的两个BigInteger是否不相等。 | #### LT @@ -869,7 +869,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LT | | ------ | -------------------------------------- | | 字节码 | 0xB5 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 判断计算栈第二个BigInteger是否小于第一个BigInteger。 | #### LE @@ -877,7 +877,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | LE | | ------ | ------------------------------------------ | | 字节码 | 0xB6 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 判断计算栈第二个BigInteger是否小于等于第一个BigInteger。 | #### GT @@ -885,7 +885,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | GT | | ------ | -------------------------------------- | | 字节码 | 0xB7 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 判断计算栈第二个BigInteger是否大于第一个BigInteger。 | #### GE @@ -893,7 +893,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | GE | | ------ | ------------------------------------------ | | 字节码 | 0xB8 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 GAS | | 功能 | 判断计算栈第二个BigInteger是否大于等于第一个BigInteger。 | #### MIN @@ -901,7 +901,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | MIN | | ------ | -------------------------------------- | | 字节码 | 0xB9 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 GAS | | 功能 | 获取计算栈栈顶的两个BigInteger中的最小值。 | #### MAX @@ -909,7 +909,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | MAX | | ------ | -------------------------------------- | | 字节码 | 0xBA | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 GAS | | 功能 | 获取计算栈栈顶的两个BigInteger中的最大值。 | #### WITHIN @@ -917,7 +917,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | WITHIN | | ------ | -------------------------------------------- | | 字节码 | 0xBB | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 GAS | | 功能 | 判断计算栈中的第三个BigInteger是否大于等于第二个BigInteger且小于第一个BigInteger。 | ### 高级数据结构 @@ -928,7 +928,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PACKMAP | | ------ | ------------------------------------------------------------ | | 字节码 | 0xBE | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 将计算栈栈顶的2n个元素打包成Map。第1个为key,第2个为第1个的value。 | #### PACKSTRUCT @@ -936,7 +936,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PACKSTRUCT | | ------ | ----------------------------------- | | 字节码 | 0xBF | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 将计算栈栈顶的n个元素打包成结构体。 | #### PACK @@ -944,7 +944,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PACK | | ------ | --------------------------------- | | 字节码 | 0xC0 | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 将计算栈栈顶的n个元素打包成数组。 | #### UNPACK @@ -952,7 +952,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | UNPACK | | ------ | ---------------------------------- | | 字节码 | 0xC1 | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 将计算栈栈顶的数组拆包成元素序列。 | #### NEWARRAY0 @@ -960,7 +960,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWARRAY0 | |----------|------------------------------------| | 字节码 | 0xC2 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 向计算栈栈顶压入一个空数组。 | #### NEWARRAY @@ -968,7 +968,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWARRAY | |----------|------------------------------------| | 字节码 | 0xC3 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 向计算栈栈顶压入一个大小为n的数组。 | #### NEWARRAY_T @@ -976,7 +976,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWARRAY_T | |----------|------------------------------------| | 字节码 | 0xC4 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 向计算栈栈顶压入一个元素类型为T且大小为n的数组。 | #### NEWSTRUCT0 @@ -984,7 +984,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWSTRUCT0 | |----------|------------------------------------| | 字节码 | 0xC5 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 向计算栈栈顶压入一个空的结构体。 | #### NEWSTRUCT @@ -992,7 +992,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWSTRUCT | |----------|------------------------------------| | 字节码 | 0xC6 | -| 系统费 | 0.00000512 GAS | +| 系统费 | 512 Datoshi | | 功能 | 向计算栈栈顶压入一个元素全为0且大小为n的结构体。 | #### NEWMAP @@ -1000,7 +1000,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | NEWMAP | | ------ | ----------------------- | | 字节码 | 0xC8 | -| 系统费 | 0.00000008 GAS | +| 系统费 | 8 Datoshi | | 功能 | 向计算栈栈顶压入一个空的Map。 | #### SIZE @@ -1008,7 +1008,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SIZE | |----------|-------------------------| | 字节码 | 0xCA | -| 系统费 | 0.00000004 GAS | +| 系统费 | 4 Datoshi | | 功能 | 获取计算栈栈顶元素的大小。 | #### HASKEY @@ -1016,7 +1016,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | HASKEY | | ------ | ------------------------------------------------------------ | | 字节码 | 0xCB | -| 系统费 | 0.00000064 GAS | +| 系统费 | 64 Datoshi | | 功能 | 从计算栈栈顶获取索引n(或键)和数组(Map,Buffer,ByteString)。若n在数组(Map,Buffer,ByteString)的长度范围内,则向栈顶压入True,否则压入False。 | #### KEYS @@ -1024,7 +1024,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | KEYS | |----------|-------------------------------------| | 字节码 | 0xCC | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 获取计算栈栈顶的Map的所有Key,以所有Key构造新的Array并压入栈顶。| #### VALUES @@ -1032,7 +1032,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | VALUES | | ------ | ------------------------------------------------------------ | | 字节码 | 0xCD | -| 系统费 | 0.00008192 GAS | +| 系统费 | 8192 Datoshi | | 功能 | 获取计算栈栈顶的元素(Array或Map)的所有Value,以所有Value构造新的Array并压入栈顶. | #### PICKITEM @@ -1040,14 +1040,14 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | PICKITEM | | ------ | ---------------------------------- | | 字节码 | 0xCE | -| 系统费 | 0.00000064 GAS | +| 系统费 | 64 Datoshi | | 功能 | 获取计算栈栈顶的数组中的第n个元素。 | #### APPEND | 指令 | APPEND | | ------ | --------------------- | | 字节码 | 0xCF | -| 系统费 | 0.00008192 GAS | +| 系统费 | 8192 Datoshi | | 功能 | 向计算栈栈顶的Array中添加一个新项。 | #### SETITEM @@ -1055,7 +1055,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | SETITEM | | ------ | ---------------------------------------------------------- | | 字节码 | 0xD0 | -| 系统费 | 0.00008192 GAS | +| 系统费 | 8192 Datoshi | | 功能 | 对计算栈栈顶的元素(Array,Map或Buffer)中的指定索引(或key)元素赋值。 | #### REVERSEITEMS @@ -1063,7 +1063,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | REVERSEITEMS | | ------ | ---------------------------- | | 字节码 | 0xD1 | -| 系统费 | 0.00008192 GAS | +| 系统费 | 8192 Datoshi | | 功能 | 反转计算栈栈顶Array或Buffer中的元素。 | #### REMOVE @@ -1071,7 +1071,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | REMOVE | | ------ | --------------------------------- | | 字节码 | 0xD2 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 从Array或Map中移除指定索引(或key)元素。 | #### CLEARITEMS @@ -1079,7 +1079,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CLEARITEMS | | ------ | -------------- | | 字节码 | 0xD3 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 清空计算栈栈顶CompoundType类型元素中的所有元素。 | #### POPITEM @@ -1087,7 +1087,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | POPITEM | | ------ | -------------- | | 字节码 | 0xD4 | -| 系统费 | 0.00000016 GAS | +| 系统费 | 16 Datoshi | | 功能 | 弹出栈顶Array数组最后的元素,并压入计算栈栈顶。 | ### 类型操作 @@ -1097,7 +1097,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ISNULL | | ------ | ------------------ | | 字节码 | 0xD8 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 判断计算栈栈顶元素是否为null | #### ISTYPE @@ -1105,7 +1105,7 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | ISTYPE | | ------ | ---------------------------------------- | | 字节码 | 0xD9 | -| 系统费 | 0.00000002 GAS | +| 系统费 | 2 Datoshi | | 功能 | 判断计算栈栈顶元素是否为指定的元素类型。 | #### CONVERT @@ -1113,5 +1113,5 @@ NeoVM虚拟机一共实现了189个指令,类别如下 | 指令 | CONVERT | | ------ | -------------------------------------- | | 字节码 | 0xDB | -| 系统费 | 0.00002048 GAS | +| 系统费 | 2048 GAS | | 功能 | 将计算栈栈顶元素转化为指定的元素类型。 | diff --git a/i18n/zh/docusaurus-plugin-content-docs/current/n3/fees.md b/i18n/zh/docusaurus-plugin-content-docs/current/n3/fees.md index 6c56c08..e83a2d4 100644 --- a/i18n/zh/docusaurus-plugin-content-docs/current/n3/fees.md +++ b/i18n/zh/docusaurus-plugin-content-docs/current/n3/fees.md @@ -25,53 +25,53 @@ sidebar_label: '合约费用' ### 操作码执行(OpCode)费用 -| 执行费用(GAS) | 操作码(OpCode)指令名称 | +| 执行费用(Datoshi) | 操作码(OpCode)指令名称 | | --------------- | ------------------------------------------------------------ | -| 0.00032768 | CALLT | -| 0.00008192 | VALUES, APPEND, SETITEM, REVERSEITEMS, CONVERT | -| 0.00004096 | PUSHDATA4 | -| 0.00002048 | MEMCPY, CAT, SUBSTR, LEFT, RIGHT, MODPOW, PACKMAP, PACKSTRUCT, PACK, UNPACK | -| 0.00000512 | PUSHDATA2, CALL, CALL_L, CALLA, THROW, NEWARRAY, NEWARRAY_T, NEWSTRUCT | -| 0.00000256 | NEWBUFFER | -| 0.00000064 | INITSLOT, POW, SQRT, HASKEY, PICKITEM | -| 0.00000032 | EQUAL, NOTEQUAL, MODMUL | -| 0.00000016 | XDROP, CLEAR, ROLL, REVERSEN, INITSSLOT, NEWARRAY0, NEWSTRUCT0, KEYS, REMOVE, CLEARITEMS, POPITEM | -| 0.00000008 | PUSHDATA1, AND, OR, XOR, ADD, SUB, MUL, DIV, MOD, SHL, SHR, BOOLAND, BOOLOR, NUMEQUAL, NUMNOTEQUAL, LT, LE, GT, GE, MIN, MAX, WITHIN, NEWMAP | -| 0.00000004 | PUSHINT128, PUSHINT256, PUSHA, TRY, TRY_L, ENDTRY, ENDTRY_L, ENDFINALLY, INVERT, SIGN, ABS, NEGATE, INC, DEC, NOT, NZ, SIZE | -| 0.00000002 | JMP, JMP_L, JMPIF, JMPIF_L, JMPIFNOT, JMPIFNOT_L, JMPEQ, JMPEQ_L, JMPNE, JMPNE_L, JMPGT, JMPGT_L, JMPGE, JMPGE_L, JMPLT, JMPLT_L, JMPLE, JMPLE_L, DEPTH, DROP, NIP, DUP, OVER, PICK, TUCK, SWAP, ROT, REVERSE3, REVERSE4, LDSFLD0, LDSFLD1, LDSFLD2, LDSFLD3, LDSFLD4, LDSFLD5, LDSFLD6, LDSFLD, STSFLD0, STSFLD1, STSFLD2, STSFLD3, STSFLD4, STSFLD5, STSFLD6, STSFLD, LDLOC0, LDLOC1, LDLOC2, LDLOC3, LDLOC4, LDLOC5, LDLOC6, LDLOC, STLOC0, STLOC1, STLOC2, STLOC3, STLOC4, STLOC5, STLOC6, STLOC, LDARG0, LDARG1, LDARG2, LDARG3, LDARG4, LDARG5, LDARG6, LDARG, STARG0, STARG1, STARG2, STARG3, STARG4, STARG5, STARG6, STARG, ISNULL, ISTYPE | -| 0.00000001 | PUSHINT8, PUSHINT16, PUSHINT32, PUSHINT64, PUSHT, PUSHF, PUSHNULL, PUSHM1, PUSH0, PUSH1, PUSH2, PUSH3, PUSH4, PUSH5, PUSH6, PUSH7, PUSH8, PUSH9, PUSH10, PUSH11, PUSH12, PUSH13, PUSH14, PUSH15, PUSH16, NOP, ASSERT, ASSERTMSG | +| 32768 | CALLT | +| 8192 | VALUES, APPEND, SETITEM, REVERSEITEMS, CONVERT | +| 4096 | PUSHDATA4 | +| 2048 | MEMCPY, CAT, SUBSTR, LEFT, RIGHT, MODPOW, PACKMAP, PACKSTRUCT, PACK, UNPACK | +| 512 | PUSHDATA2, CALL, CALL_L, CALLA, THROW, NEWARRAY, NEWARRAY_T, NEWSTRUCT | +| 256 | NEWBUFFER | +| 64 | INITSLOT, POW, SQRT, HASKEY, PICKITEM | +| 32 | EQUAL, NOTEQUAL, MODMUL | +| 16 | XDROP, CLEAR, ROLL, REVERSEN, INITSSLOT, NEWARRAY0, NEWSTRUCT0, KEYS, REMOVE, CLEARITEMS, POPITEM | +| 8 | PUSHDATA1, AND, OR, XOR, ADD, SUB, MUL, DIV, MOD, SHL, SHR, BOOLAND, BOOLOR, NUMEQUAL, NUMNOTEQUAL, LT, LE, GT, GE, MIN, MAX, WITHIN, NEWMAP | +| 4 | PUSHINT128, PUSHINT256, PUSHA, TRY, TRY_L, ENDTRY, ENDTRY_L, ENDFINALLY, INVERT, SIGN, ABS, NEGATE, INC, DEC, NOT, NZ, SIZE | +| 2 | JMP, JMP_L, JMPIF, JMPIF_L, JMPIFNOT, JMPIFNOT_L, JMPEQ, JMPEQ_L, JMPNE, JMPNE_L, JMPGT, JMPGT_L, JMPGE, JMPGE_L, JMPLT, JMPLT_L, JMPLE, JMPLE_L, DEPTH, DROP, NIP, DUP, OVER, PICK, TUCK, SWAP, ROT, REVERSE3, REVERSE4, LDSFLD0, LDSFLD1, LDSFLD2, LDSFLD3, LDSFLD4, LDSFLD5, LDSFLD6, LDSFLD, STSFLD0, STSFLD1, STSFLD2, STSFLD3, STSFLD4, STSFLD5, STSFLD6, STSFLD, LDLOC0, LDLOC1, LDLOC2, LDLOC3, LDLOC4, LDLOC5, LDLOC6, LDLOC, STLOC0, STLOC1, STLOC2, STLOC3, STLOC4, STLOC5, STLOC6, STLOC, LDARG0, LDARG1, LDARG2, LDARG3, LDARG4, LDARG5, LDARG6, LDARG, STARG0, STARG1, STARG2, STARG3, STARG4, STARG5, STARG6, STARG, ISNULL, ISTYPE | +| 1 | PUSHINT8, PUSHINT16, PUSHINT32, PUSHINT64, PUSHT, PUSHF, PUSHNULL, PUSHM1, PUSH0, PUSH1, PUSH2, PUSH3, PUSH4, PUSH5, PUSH6, PUSH7, PUSH8, PUSH9, PUSH10, PUSH11, PUSH12, PUSH13, PUSH14, PUSH15, PUSH16, NOP, ASSERT, ASSERTMSG | | 0 | ABORT, ABORTMSG, RET, SYSCALL | 参考:[ApplicationEngine.OpCodePrices.cs](https://github.com/neo-project/neo/blob/master/src/Neo/SmartContract/ApplicationEngine.OpCodePrices.cs) ### 系统调用费用 -| 系统调用名称 | 执行费用(GAS) | +| 系统调用名称 | 执行费用(Datoshi) | | ------------------------------------- | -------------------- | -| System.Contract.Call | 0.00032768 | +| System.Contract.Call | 32768 | | System.Contract.CallNative | 参考原生合约费用 | -| System.Contract.IsStandard | 0.00001024 | -| System.Contract.GetCallFlags | 0.00001024 | -| System.Contract.CreateStandardAccount | 0.00000256 | -| System.Contract.CreateMultisigAccount | 0.00000256 | -| Neo.Crypto.CheckSig | 0.00032768 | +| System.Contract.IsStandard | 1024 | +| System.Contract.GetCallFlags | 1024 | +| System.Contract.CreateStandardAccount | 256 | +| System.Contract.CreateMultisigAccount | 256 | +| Neo.Crypto.CheckSig | 32768 | | Neo.Crypto.CheckMultisig | 根据签名数量动态计算 | -| System.Iterator.Create | 0.00000016 | -| System.Iterator.Next | 0.00032768 | -| System.Iterator.Value | 0.00000016 | -| System.Runtime.Platform | 0.00000008 | -| System.Runtime.GetTrigger | 0.00000008 | -| System.Runtime.GetTime | 0.00000008 | -| System.Runtime.GetScriptContainer | 0.00000008 | -| System.Runtime.GetExecutingScriptHash | 0.00000016 | -| System.Runtime.GetCallingScriptHash | 0.00000016 | -| System.Runtime.GetEntryScriptHash | 0.00000016 | -| System.Runtime.CheckWitness | 0.00001024 | -| System.Runtime.GetInvocationCounter | 0.00000016 | -| System.Runtime.Log | 0.00032768 | -| System.Runtime.Notify | 0.00032768 | -| System.Runtime.GetNotifications | 0.00000256 | -| System.Runtime.GasLeft | 0.00000016 | +| System.Iterator.Create | 16 | +| System.Iterator.Next | 32768 | +| System.Iterator.Value | 16 | +| System.Runtime.Platform | 8 | +| System.Runtime.GetTrigger | 8 | +| System.Runtime.GetTime | 8 | +| System.Runtime.GetScriptContainer | 8 | +| System.Runtime.GetExecutingScriptHash | 16 | +| System.Runtime.GetCallingScriptHash | 16 | +| System.Runtime.GetEntryScriptHash | 16 | +| System.Runtime.CheckWitness | 1024 | +| System.Runtime.GetInvocationCounter | 16 | +| System.Runtime.Log | 32768 | +| System.Runtime.Notify | 32768 | +| System.Runtime.GetNotifications | 256 | +| System.Runtime.GasLeft | 16 | 参考: @@ -89,25 +89,25 @@ sidebar_label: '合约费用' ### 原生合约执行费用 -| 原生合约名称 | 原生合约方法 | 执行费用(GAS) | +| 原生合约名称 | 原生合约方法 | 执行费用(Datoshi) | | ------------------ | ----------------------- | ------------------------------- | | ContractManagement | Deploy | 参考存储区使用费用,最低 10 GAS | | ContractManagement | Update | 参考存储区使用费用 | -| LedgerContract | GetTransactionFromBlock | 0.00065536 | -| NeoToken | UnclaimedGas | 0.00131072 | +| LedgerContract | GetTransactionFromBlock | 65536 | +| NeoToken | UnclaimedGas | 131072 | | NeoToken | RegisterCandidate | 动态计算,默认 1000 GAS | -| NeoToken | UnregisterCandidate | 0.00065536 | -| NeoToken | Vote | 0.00065536 | -| NeoToken | GetCandidates | 0.04194304 | -| NeoToken | GetCommittee | 0.04194304 | -| NeoToken | GetNextBlockValidators | 0.04194304 | -| NeoToken、GasToken | Transfer | 0.00131072 | +| NeoToken | UnregisterCandidate | 65536 | +| NeoToken | Vote | 65536 | +| NeoToken | GetCandidates | 4194304 | +| NeoToken | GetCommittee | 4194304 | +| NeoToken | GetNextBlockValidators | 4194304 | +| NeoToken、GasToken | Transfer | 131072 | | OracleContract | Request | 动态计算,用户调用时指定手续费 | -| StdLib | Deserialize | 0.00008192 | -| StdLib | JsonDeserialize | 0.00008192 | -| StdLib | 其他 | 0.00002048 | +| StdLib | Deserialize | 8192 | +| StdLib | JsonDeserialize | 8192 | +| StdLib | 其他 | 2048 | -其他未列出的原生合约方法的手续费均为 0.00032768 GAS。 +其他未列出的原生合约方法的手续费均为 32768 Datoshi。 参考: [neo/SmartContract/Native](https://github.com/neo-project/neo/tree/master/src/Neo/SmartContract/Native)