{"id":10909,"date":"2023-03-18T06:37:16","date_gmt":"2023-03-18T06:37:16","guid":{"rendered":"https:\/\/www.bitnovo.com\/blog\/?p=10909"},"modified":"2022-05-17T20:11:53","modified_gmt":"2022-05-17T20:11:53","slug":"quest-ce-quun-op_code-guide-rapide-pour-votre-blockchain","status":"publish","type":"post","link":"https:\/\/www.bitnovo.com\/blog\/fr\/quest-ce-quun-op_code-guide-rapide-pour-votre-blockchain","title":{"rendered":"Qu&#8217;est-ce qu&#8217;un OP_CODE ? Guide rapide pour votre Blockchain"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #ffffff;color:#ffffff\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #ffffff;color:#ffffff\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.bitnovo.com\/blog\/fr\/quest-ce-quun-op_code-guide-rapide-pour-votre-blockchain\/#quest-ce_que_lop_code\" >Qu\u2019est-ce que l\u2019OP_CODE?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.bitnovo.com\/blog\/fr\/quest-ce-quun-op_code-guide-rapide-pour-votre-blockchain\/#comment_fonctionne_un_op_code_parlons_des_langages_machine_et_des_operandes\" >Comment fonctionne un OP_CODE ? Parlons des langages machine et des op\u00e9randes.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.bitnovo.com\/blog\/fr\/quest-ce-quun-op_code-guide-rapide-pour-votre-blockchain\/#les_codes_doperation_des_cryptomonnaies_telles_que_le_bitcoin\" >Les codes d\u2019op\u00e9ration des cryptomonnaies telles que le Bitcoin<\/a><\/li><\/ul><\/nav><\/div>\n<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span><p>Dans la vie r\u00e9elle, g\u00e9n\u00e9ralement, pour \u00e9viter la procrastination et atteindre notre id\u00e9al du Nouvel An, qui est d\u2019\u00eatre plus productif que les ann\u00e9es pr\u00e9c\u00e9dentes, nous cr\u00e9ons un plan complet avec des horaires et des activit\u00e9s \u00e0 faire.<\/p>\n<p>Finalement, ce qui est \u00e9tonnant, c\u2019est la volont\u00e9 de commencer \u00e0 le faire. Mais lorsque vient le jour o\u00f9 nous nous r\u00e9veillons en nous disant \u00ab\u00a0allez, on peut le faire aujourd\u2019hui\u00a0\u00bb, c\u2019est l\u00e0 que tout commence \u00e0 devenir une r\u00e9alit\u00e9, certes temporaire, mais efficace, car elle nous pousse \u00e0 agir. C\u2019est ainsi\u00a0<b>que fonctionnent les OP_CODE, \u00e9galement appel\u00e9s codes op\u00e9rationnels ou codes de fonctionnement.<\/b><\/p>\n<p>Si vous voulez savoir comment ils fonctionnent et ce qui les rend si essentiels dans l\u2019univers des crypto-monnaies, vous \u00eates au bon endroit ! Pr\u00e9parez vos bagages, aujourd\u2019hui nous allons vous emmener en voyage dans le monde de la programmation.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"quest-ce_que_lop_code\"><\/span>Qu\u2019est-ce que l\u2019OP_CODE?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>En commen\u00e7ant par \u00ab\u00a0qu\u2019est-ce qu\u2019un OP_CODE\u00a0\u00bb, plus connu sous le nom de code d\u2019op\u00e9ration,\u00a0<b>il peut \u00eatre d\u00e9fini comme une instruction qui sp\u00e9cifie l\u2019op\u00e9ration \u00e0 effectuer par les machines virtuelles.<\/b><\/p>\n<p>Cette commande est g\u00e9n\u00e9r\u00e9e en langage d\u2019assemblage ou en langage machine qui la sp\u00e9cifie ou la traduit en une collection de chiffres ou de bits binaires (0 et 1).<\/p>\n<p><b>Dans le monde des cryptomonnaies<\/b>, il facilite le processus de programmation au sein d\u2019une blockchain, qu\u2019il s\u2019agisse de la cr\u00e9ation de structures de programmation avanc\u00e9es ou des fameux smart-contracts qui sont examin\u00e9s et ex\u00e9cut\u00e9s par les diff\u00e9rents n\u0153uds d\u2019une blockchain comme\u00a0<b>Ethereum<\/b>\u00a0ou<b>\u00a0Bitcoin<\/b>.<\/p>\n<p>Comme mentionn\u00e9 ci-dessus,\u00a0<b>les OP_CODE sont, plus simplement, un appel \u00e0 l\u2019action.<\/b><\/p>\n<p>Dans le cas de nos r\u00e9solutions du Nouvel An, ce serait notre motivation. Celle qui nous fait, au moins ce jour-l\u00e0, nous lever et aller \u00e0 la salle de sport ou commencer \u00e0 travailler.<\/p>\n<p>C\u2019est pr\u00e9cis\u00e9ment ce que serait un code d\u2019exploitation pour un syst\u00e8me ou un ordinateur.<\/p>\n<p>Cependant, avant d\u2019entrer dans le vif du sujet et de comprendre comment cela fonctionne, il est important de\u00a0<b>reconna\u00eetre que ces OP_CODEs fonctionnent \u00e0 la fois pour le hardware et les software<\/b>. Toutefois, leurs formats sont configur\u00e9s diff\u00e9remment.<\/p>\n<ul>\n<li aria-level=\"1\"><b>Sur le plan hardware<\/b>, les codes d\u2019op\u00e9ration sont \u00e9tablis et fonctionnent selon l\u2019<b>architecture du jeu d\u2019instructions (ISA)<\/b>, qui d\u00e9finit les types de donn\u00e9es pris en charge, les registres, le support de la gestion de la m\u00e9moire principale ou d\u2019autres \u00e9l\u00e9ments tels que la coh\u00e9rence de la m\u00e9moire ou le mod\u00e8le d\u2019entr\u00e9e\/sortie. Un exemple d\u2019ISA est la famille de processeurs \u00ab\u00a0x86\u00a0\u00bb d\u2019Intel ou AMD, qui comprend des processeurs se terminant par \u00ab\u00a086\u00a0\u00bb tels que les 80186, 80268, 80286, entre autres, dont la fonction est d\u2019adresser plus de m\u00e9moire que ne peut en couvrir une seule adresse de 16 bits.<\/li>\n<li aria-level=\"1\"><b>Dans le cas des software<\/b>, les OP_CODE sont \u00e9galement appel\u00e9s codes d\u2019octets, qui sont destin\u00e9s \u00e0 \u00eatre interpr\u00e9t\u00e9s par un logiciel, plut\u00f4t que par un dispositif mat\u00e9riel, et utilisent donc des donn\u00e9es et des op\u00e9rations plus complexes que les codes mat\u00e9riels, mais sont construits selon des principes similaires. Un exemple de ce type de code se trouve dans les fichiers de classe java qui sont interpr\u00e9t\u00e9s par une machine virtuelle Java (JVM).<\/li>\n<\/ul>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"comment_fonctionne_un_op_code_parlons_des_langages_machine_et_des_operandes\"><\/span>Comment fonctionne un OP_CODE ? Parlons des langages machine et des op\u00e9randes.<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>La mani\u00e8re dont la commande est pr\u00e9sent\u00e9e ou, en d\u2019autres termes, le langage qu\u2019elle utilise, est implicite dans son m\u00e9canisme de fonctionnement.<\/p>\n<p>\u00c0 ces fins, le<b>\u00a0langage de programmation<\/b>\u00a0est un outil indispensable et se consolide comme la principale option pour la pr\u00e9sentation des donn\u00e9es et le bon fonctionnement de ce type de proc\u00e9dures.<\/p>\n<p>Pour cette raison, il est courant que les codes d\u2019op\u00e9ration soient en anglais et, par cons\u00e9quent, que leur traitement fasse appel \u00e0 des valeurs binaires.<\/p>\n<p>\u00c0 partir de l\u00e0, l\u2019opcode identifie l\u2019op\u00e9ration \u00e0 effectuer et l\u2019ensemble des instructions n\u00e9cessaires \u00e0 ce processus.<\/p>\n<p>Dans cette partie, il y a aussi un autre composant important qui sont<b>\u00a0les op\u00e9randes.<\/b><\/p>\n<p>Pour expliquer cela,\u00a0<b>commen\u00e7ons par un exemple<\/b>: nous sommes \u00e0 une f\u00eate et on nous donne une part de g\u00e2teau \u00e0 deux niveaux : si l\u2019opcode ou code d\u2019op\u00e9ration est la portion correspondant au premier niveau du g\u00e2teau, les op\u00e9randes seraient l\u2019autre niveau, compl\u00e9tant ainsi un merveilleux plat.<\/p>\n<p>Pour cette raison, les op\u00e9randes et l\u2019OP_CODE sont des fr\u00e8res jumeaux ins\u00e9parables qui, dans certaines circonstances plus que d\u2019autres, ont besoin l\u2019un de l\u2019autre pour r\u00e9aliser une fonction, puisque tous deux sont des parties d\u2019une instruction.<\/p>\n<p>D\u2019une part, nous comprenons que les<b>\u00a0OP_CODEs peuvent \u00eatre traduits en actes ou en faits observables. L\u2019op\u00e9rande est constitu\u00e9 des variables qui sont impliqu\u00e9es dans ce processus<\/b>\u00a0ou, en d\u2019autres termes, des valeurs ou des sujets inclus.<\/p>\n<p>Si nous avions envie de faire une paella, le\u00a0<b>code d\u2019op\u00e9ration serait les techniques et les proc\u00e9dures<\/b>\u00a0\u00e0 mettre en \u0153uvre pour cuire le riz, la poitrine de porc, les c\u00f4tes de porc, entre autres ;\u00a0<b>et l\u2019op\u00e9rande serait le cuisinier<\/b>, qui est charg\u00e9 d\u2019obtenir tous les ingr\u00e9dients et de les pr\u00e9parer pour l\u2019\u00e9laboration de la recette.<\/p>\n<p>Par cons\u00e9quent,<b>\u00a0le code de l\u2019op\u00e9ration serait un verbe, tandis que l\u2019op\u00e9rande serait le sujet.<\/b><\/p>\n<p>Pour cette raison, nous pouvons comprendre deux choses : si nous voulons que les actions pr\u00e9vues soient ex\u00e9cut\u00e9es \u00e0 l\u2019int\u00e9rieur d\u2019une blockchain, il est n\u00e9cessaire d\u2019utiliser les OP_CODE dans un langage adapt\u00e9 pour \u00eatre trait\u00e9 \u00e0 l\u2019int\u00e9rieur par le CPU ou d\u2019autres mat\u00e9riels\/logiciels et de d\u00e9finir les op\u00e9randes (registres, adresses, \u00e9tiquettes, valeurs, etc.) avec lesquels l\u2019instruction fonctionnera.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"les_codes_doperation_des_cryptomonnaies_telles_que_le_bitcoin\"><\/span>Les codes d\u2019op\u00e9ration des cryptomonnaies telles que le Bitcoin<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><b>Toutes les cryptos utilisent des opcodes (codes d\u2019op\u00e9ration)<\/b>, qui permettent de traiter des transactions ou des op\u00e9rations au sein de leur syst\u00e8me.<\/p>\n<p>Le bitcoin en est un exemple clair. Actuellement, le \u00ab\u00a0script\u00a0\u00bb est le langage utilis\u00e9 pour verrouiller et d\u00e9verrouiller les transactions.<\/p>\n<p>Pour ce langage, il existe une dizaine de types de codes sp\u00e9ciaux pour diff\u00e9rentes fonctions, telles que les constantes (le courant), le contr\u00f4le de flux, les op\u00e9rations de pile et d\u2019\u00e9pissage, la logique binaire, les op\u00e9rations num\u00e9riques, les op\u00e9rations cryptographiques, le verrouillage temporel, les pseudo-codes (utilis\u00e9s pour ajuster les transactions) et les codes r\u00e9serv\u00e9s.<\/p>\n<p>Terminons ce voyage en examinant quelques-uns des diff\u00e9rents types de codes d\u2019op\u00e9ration que l\u2019on peut trouver dans le script Bitcoin:<\/p>\n<div id=\"image_915673630\" class=\"img has-hover x md-x lg-x y md-y lg-y\">\n<div class=\"img-inner dark\"><img fetchpriority=\"high\" decoding=\"async\" class=\"attachment-large size-large\" src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Que-es-un-OP_CODE.jpg\" sizes=\"(max-width: 768px) 100vw, 768px\" srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Que-es-un-OP_CODE.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Que-es-un-OP_CODE-300x205.jpg 300w\" alt=\"Qu\u00e9 es un OP CODE\" width=\"768\" height=\"526\" \/><\/div>\n<\/div>\n<p>Voil\u00e0 pour notre voyage. Si vous souhaitez lire d\u2019autres articles li\u00e9s \u00e0 l\u2019actualit\u00e9 des crypto-monnaies et aux concepts de base, vous pouvez cliquer sur les sujets connexes ci-dessous.<\/p>\n<p>Si vous souhaitez rejoindre cette fascinante aventure des crypto-monnaies, vous pouvez vous rendre sur\u00a0<b>notre page d\u2019accueil<\/b>\u00a0et consulter nos services. Nous sommes toujours pr\u00eats \u00e0 r\u00e9pondre \u00e0 vos questions et \u00e0 vous aider dans tous vos besoins. \u00c0 la prochaine fois!<\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>Dans la vie r\u00e9elle, g\u00e9n\u00e9ralement, pour \u00e9viter la procrastination et atteindre notre id\u00e9al du Nouvel An, qui est d\u2019\u00eatre plus productif que les ann\u00e9es pr\u00e9c\u00e9dentes, nous cr\u00e9ons un plan complet avec des horaires et des activit\u00e9s \u00e0 faire. Finalement, ce qui est \u00e9tonnant, c\u2019est la volont\u00e9 de commencer \u00e0 le faire. Mais lorsque vient le [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":6970,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[198],"tags":[],"class_list":["post-10909","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blockchain-fr"],"_links":{"self":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10909","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/comments?post=10909"}],"version-history":[{"count":0,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10909\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media\/6970"}],"wp:attachment":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media?parent=10909"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/categories?post=10909"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/tags?post=10909"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}