Bitcoin

script – Funcionamiento interno de OP_IF y OP_ELSE

single-image
(adsbygoogle = window.adsbygoogle || []).push({});


Funcionamiento interno de las condiciones en Bitcoin Script

Las condiciones en Bitcoin Script se implementan conceptualmente utilizando una pila de valores booleanos, y cada valor booleano indica si el código de operación actual debe ejecutarse al iterar el script para cada profundidad de la condición (IF / ELSE anidado).

Para entender cómo funciona, consideremos primero una ejecución condicionada booleana simple de códigos de operación. El intérprete recorre el script estableciendo el valor booleano en true (Ejecutar operaciones) al principio. Al encontrarse con uno IF El valor booleano se establece en el valor de los datos de inserción antes de la IF, convertido a un booleano (CastToBool en la implementación de referencia).
Si ese fuera el caso true Continuará ejecutando los siguientes códigos de operación y ejecutará efectivamente “el” if {} Rama “.
Si era falsela ejecución se suspenderá hasta que … llegue a un ELSE! Encuentro con uno ELSE alterna la ejecución de la suspensión booleana global. Si fuera antes false, será true y ejecutar eficazmente “el else {} Branch “. Por el contrario, si se true, será false y la ejecución de “la else {} Rama “.

Con un poco de arte ASCII (fExec es el valor booleano global que indica si los OP realmente deberían ejecutarse):




Value of fExec:  true    true      true         true  true    true         false      false            ???

Script        : |start| OP_BLABLA OP_DOSOMETHING <1> OP_IF OP_DOSOMESTUFF OP_ELSE OP_DOANOTHERSTUFF OP_ENDIF



Value of fExec:  true    true      true         true  false    false       true      true             ???

Script        : |start| OP_BLABLA OP_DOSOMETHING <0> OP_IF OP_DOSOMESTUFF OP_ELSE OP_DOANOTHERSTUFF OP_ENDIF

Observe cómo he resaltado el valor de fExec cómo ??? en el encuentro OP_ENDIF. Esto se debe a que la implementación real es un poco más complicada: para admitir condiciones anidadas, este no es un valor booleano único, sino un vector de valores booleanos que se utilizan para determinar la ejecución. Esto es:

  • OP_IF inserta un nuevo valor booleano en el vector
  • OP_ELSE cambia el último valor booleano del vector
  • OP_ENDIF estallará el último elemento del vector

Siga adelante

Varios ELSE por un solo IF

Tenga en cuenta que la implementación del ELSE Si es un solo interruptor, significa que no hay nada que impida el doble interruptor. Es decir, puedes tener muchos seguidores. ELSE Opcodes antes del ENDIF. Dos siguen ELSEs efectivamente alternaría el último valor booleano dos veces y así ejecutaría los siguientes códigos de operación, como sería el caso de “the” if {} Rama “.

Comportamiento cuadrático en aritmética fExec del vector de valores booleanos

Pieter Wuille modificó la implementación de la lógica condicional en 2020 para corregir un comportamiento cuadrático encontrado por Segio Demian Lerner.
Por lo tanto, la implementación real ya no usa una pila para los valores booleanos, sino que almacena el “valor booleano superior” en una estructura de datos dedicada que imita la implementación anterior.

Regla Tapscript ligeramente relacionada

La nueva adición propuesta a las reglas del script como parte de la bifurcación suave de la raíz principal propuesta (Tapscript) elimina el límite de 201 Códigos OP. Esto fue posible al eliminar el comportamiento cuadrático mencionado anteriormente.

You may also like

Blockchain

¿Es hora de tener cuidado o el precio se romperá $ 1,00?

La aparición como invitado de Elon Musk Dogecoin SNL en Saturday Night Live (SNL) dejó Twitter en un frenesí de organizar fiestas de observación en anticipación de más grandes movimientos ascendentes en la moneda meme.

Este último desarrollo en la historia de DOGE sigue los tweets regulares de Musk sobre la moneda, lo que le valió el apodo de “Dogefather”. Su apoyo es una razón clave por la que Dogecoin la convirtió de una broma en una de las criptomonedas líderes en el mundo.

El CEO de Tesla será coanfitrión del programa SNL a las 11:30 p.m.EDT. Su aparición pondrá a Elon Musk y Dogecoin en el centro de atención. Aunque Dogecoin se ha recuperado masivamente este año, con un aumento del 14.000%, las acciones de Tesla han experimentado un repunte al alza durante el año pasado, con una caída de las acciones del 4,7%…

View More Article
Bitcoin

Los NFT están cambiando el mercado de los coleccionables

El arte ha sido la principal fuente de inspiración para muchas personas a lo largo de la historia. En la era de las criptomonedas y el mundo digitalizado, las tendencias están cambiando más rápido que nunca. Durante años, numerosos artistas han intentado pisar patios de recreo que se mueven rápidamente y agarrar un pedazo de pastel, pero ahora ha llegado su momento.

La fiebre NFT rápidamente golpeó a la industria, convirtiendo a artistas digitales y creadores de memes populares en celebridades ricas. Es difícil saber cuándo esta euforia se quedará sin aliento, pero antes de que se detenga el tren del bombo, estamos seguros de que veremos más récords de mercado y experimentos emocionantes en esta área.

Conectado:NFT Trading Cards: ¿Una nueva forma de poseer coleccionables o una burbuja de activos?

De centavos a una fortuna

La capitalización de mercado de los tokens no fungibles (NFT)…

View More Article
Bitcoin

Fantom otorga subvenciones para apoyar a los desarrolladores de blockchain que construyen en Opera

Para alentar a los desarrolladores a unirse y construir en su plataforma, la Fundación Fantom ha tomado algunas medidas para garantizar que los desarrolladores puedan construir fácilmente en la plataforma y que los problemas pasados ​​no se conviertan en un obstáculo para su trabajo en Fantom. El movimiento más notable fue la reciente donación de Fantom para alentar a los desarrolladores actuales de la plataforma a mostrar su agradecimiento y apoyar el increíble trabajo que estos desarrolladores están haciendo en Fantom.

Apoyar a los desarrolladores a través de subvenciones

La forma más reciente en que Fantom ha demostrado su compromiso de garantizar la mejor experiencia posible para los desarrolladores ha sido mediante generosas subvenciones a quienes ayudan a Fantom a crecer donde está hoy. Después de todo, Fantom tiene actualmente 77,000 billeteras Fantom (un aumento del 70% en comparación con el mes anterior) y más de 200,000 transacciones diarias.

Fantom…

View More Article
Blockchain

He aquí por qué Irán está tratando de prohibir Bitcoin extraído en el extranjero

Después de anuncio Según un comunicado de prensa del país, los ciudadanos iraníes ya no pueden comerciar con Bitcoin y otras criptomonedas extraídas fuera del país.

Fatemeh Fannizadeh, abogada y asesora suiza en criptomonedas y blockchain, dijo que la medida tiene como objetivo detener la fuga de capitales del país.

“Las criptomonedas ya están reguladas en Irán … solo significa que Irán está exportando de manera más agresiva las monedas producidas por Irán, promoviendo la minería y contrarrestando la fuga de capitales ante la depreciación del rial”, dijo Fannizadeh en un tuit.

View More Article
Bitcoin

bitcoind – FINANCIAMIENTO DESCENTRALIZADO SOUPSWAP

  1. ¿Qué es SoupSwap?

SoupSwap es una plataforma financiera descentralizada con múltiples ecosistemas basados ​​en Binance Smart Chain y que opera en una red descentralizada, eliminando restricciones intermedias y soportando miles de aplicaciones descentralizadas (Dapp). SoupSwap ofrece la máxima seguridad y rendimiento para ahorrar tiempo y costes de forma óptima. La cadena de aplicaciones descentralizada maximiza la rentabilidad y maneja múltiples transacciones, lo que lleva la posición de la plataforma financiera descentralizada a un nuevo nivel.

  1. Nuestras soluciones

SoupSwap fue desarrollado con el objetivo de mejorar la escalabilidad de las aplicaciones descentralizadas, maximizar el rendimiento, minimizar las tarifas y brindar liquidez a la comunidad. En la búsqueda de esta misión, SoupSwap ha alentado al equipo a construir el ecosistema más diverso y de alto rendimiento para satisfacer las necesidades de millones de…

View More Article
Bitcoin

El agregador de producción agrícola Don-Key se está preparando para un IDO en SuperStarter

Don-key, una de las plataformas DeFi (finanzas descentralizadas) prometedoras, ha recaudado capital fresco para ampliar su gama de productos. Se anunció que Don-Key ha completado una ronda de inicio de $ 2.2 millones liderada por Black Edge Capital, AU21. Genesis Block Ventures, Spark Digital, MarketAcross, Solidity Ventures, MoonWhale y Morningstar Ventures.

Según un comunicado, Don-Key, que opera una plataforma agrícola de rendimiento indefinido, planea proporcionar los fondos para la dotación de personal y el lanzamiento de nuevos productos en 2021.

La compañía acaba de anunciar que alojará su IDO en el SuperStarter Launchpad el 11 de mayo.

Los registros de cultivo de rendimiento son una de las adiciones más recientes a las aplicaciones financieras descentralizadas. Aunque estas plataformas defi funcionan de manera muy diferente a las plataformas centralizadas, su beneficio depende de los activos que se presten. Estas ofertas se basan principalmente en una red descentralizada de prestamistas…

View More Article