{"id":2799,"date":"2025-07-25T10:15:20","date_gmt":"2025-07-25T09:15:20","guid":{"rendered":"https:\/\/workboot.fr\/ciela\/?page_id=2799"},"modified":"2025-07-25T10:18:18","modified_gmt":"2025-07-25T09:18:18","slug":"arm","status":"publish","type":"page","link":"https:\/\/workboot.fr\/ciela\/arm\/","title":{"rendered":"ARM"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>Introduction \u00e0 ARM<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">ARM est une architecture de processeurs bas\u00e9e sur le concept&nbsp;<strong>RISC<\/strong>&nbsp;(Reduced Instruction Set Computer), ce qui signifie qu&rsquo;elle utilise un ensemble d&rsquo;instructions simplifi\u00e9es pour une ex\u00e9cution plus rapide et une consommation d&rsquo;\u00e9nergie r\u00e9duite.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Caract\u00e9ristiques principales :<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Faible consommation d&rsquo;\u00e9nergie<\/strong>\u00a0\u2192 Id\u00e9al pour les appareils mobiles (smartphones, tablettes, IoT).<\/li>\n\n\n\n<li><strong>Architecture modulaire<\/strong>\u00a0\u2192 Plusieurs versions (Cortex-A, Cortex-M, Cortex-R) adapt\u00e9es \u00e0 diff\u00e9rents besoins.<\/li>\n\n\n\n<li><strong>Licence flexible<\/strong>\u00a0\u2192 ARM ne fabrique pas ses propres puces, mais vend des licences \u00e0 des fabricants (Qualcomm, Apple, Samsung, etc.).<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Familles de processeurs ARM<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Famille<\/th><th class=\"has-text-align-left\" data-align=\"left\">Utilisation<\/th><th class=\"has-text-align-left\" data-align=\"left\">Exemples<\/th><\/tr><\/thead><tbody><tr><td><strong>Cortex-A<\/strong><\/td><td>Applications haute performance (OS, smartphones)<\/td><td>Snapdragon (Qualcomm), Apple M1\/M2<\/td><\/tr><tr><td><strong>Cortex-M<\/strong><\/td><td>Microcontr\u00f4leurs embarqu\u00e9s (IoT, capteurs)<\/td><td>STM32 (STMicro), nRF52 (Nordic)<\/td><\/tr><tr><td><strong>Cortex-R<\/strong><\/td><td>Temps r\u00e9el (automobile, disques durs)<\/td><td>Contr\u00f4leurs de stockage, ABS voiture<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Mode d&rsquo;ex\u00e9cution et registres<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">ARM fonctionne principalement en&nbsp;<strong>mode 32 bits (ARMv7) ou 64 bits (ARMv8-A)<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Registres principaux (ARM 32 bits) :<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>R0 \u00e0 R12<\/strong>\u00a0\u2192 Registres g\u00e9n\u00e9raux.<\/li>\n\n\n\n<li><strong>R13 (SP)<\/strong>\u00a0\u2192 Stack Pointer (pointeur de pile).<\/li>\n\n\n\n<li><strong>R14 (LR)<\/strong>\u00a0\u2192 Link Register (adresse de retour des fonctions).<\/li>\n\n\n\n<li><strong>R15 (PC)<\/strong>\u00a0\u2192 Program Counter (pointeur d&rsquo;instruction).<\/li>\n\n\n\n<li><strong>CPSR<\/strong>\u00a0\u2192 Registre d&rsquo;\u00e9tat (flags Z, N, C, V).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">En 64 bits (ARMv8), les registres sont \u00e9tendus \u00e0&nbsp;<strong>X0-X30<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>&nbsp;Jeu d&rsquo;instructions ARM (ASM)<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Syntaxe de base :<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">code assembleur<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>MOV R0, #42      ; R0 = 42\nADD R1, R2, R3   ; R1 = R2 + R3\nCMP R0, R1       ; Compare R0 et R1 (met \u00e0 jour les flags)\nBGT label        ; Saute si \"Greater Than\"<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Quelques instructions courantes :<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Instruction<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><\/tr><\/thead><tbody><tr><td><code>MOV Rd, Op<\/code><\/td><td>D\u00e9place une valeur dans un registre<\/td><\/tr><tr><td><code>ADD\/SUB Rd, Rn, Op<\/code><\/td><td>Addition\/Soustraction<\/td><\/tr><tr><td><code>LDR Rd, [Rn]<\/code><\/td><td>Charge depuis la m\u00e9moire<\/td><\/tr><tr><td><code>STR Rd, [Rn]<\/code><\/td><td>Stocke en m\u00e9moire<\/td><\/tr><tr><td><code>B label<\/code><\/td><td>Saut inconditionnel<\/td><\/tr><tr><td><code>BL func<\/code><\/td><td>Appel de fonction (stocke l&rsquo;adresse de retour dans LR)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Pipeline et performances<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">ARM utilise un&nbsp;<strong>pipeline<\/strong>&nbsp;pour ex\u00e9cuter plusieurs instructions en parall\u00e8le (3 \u00e0 15 \u00e9tapes selon les mod\u00e8les).<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Avantage<\/strong>\u00a0: Augmente le d\u00e9bit d&rsquo;ex\u00e9cution.<\/li>\n\n\n\n<li><strong>Inconv\u00e9nient<\/strong>\u00a0: Risque de \u00ab\u00a0hazards\u00a0\u00bb (d\u00e9pendances entre instructions).<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>ARM vs x86<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\"><strong>Crit\u00e8re<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>ARM<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>x86 (Intel\/AMD)<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Philosophie<\/strong><\/td><td>RISC (instructions simples)<\/td><td>CISC (instructions complexes)<\/td><\/tr><tr><td><strong>Consommation<\/strong><\/td><td>Tr\u00e8s faible<\/td><td>\u00c9lev\u00e9e (sauf mod\u00e8les r\u00e9cents)<\/td><\/tr><tr><td><strong>Performances<\/strong><\/td><td>Optimis\u00e9 pour mobile\/embarqu\u00e9<\/td><td>Optimis\u00e9 pour PC\/serveurs<\/td><\/tr><tr><td><strong>Licence<\/strong><\/td><td>Vendue \u00e0 d&rsquo;autres soci\u00e9t\u00e9s<\/td><td>Fabriqu\u00e9 par Intel\/AMD<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Applications d&rsquo;ARM<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Smartphones<\/strong>\u00a0(95% du march\u00e9 : Apple A16, Snapdragon 8 Gen 2).<\/li>\n\n\n\n<li><strong>Objets connect\u00e9s (IoT)<\/strong>\u00a0: Capteurs, montres, domotique.<\/li>\n\n\n\n<li><strong>Serveurs<\/strong>\u00a0: Graviton (Amazon), Ampere (ARM pour data centers).<\/li>\n\n\n\n<li><strong>Ordinateurs<\/strong>\u00a0: Apple Silicon (M1\/M2), Raspberry Pi.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction \u00e0 ARM ARM est une architecture de processeurs bas\u00e9e sur le concept&nbsp;RISC&nbsp;(Reduced Instruction Set Computer), ce qui signifie qu&rsquo;elle utilise un ensemble d&rsquo;instructions simplifi\u00e9es pour une ex\u00e9cution plus rapide et une consommation d&rsquo;\u00e9nergie r\u00e9duite. Caract\u00e9ristiques principales : Familles de processeurs ARM Famille Utilisation Exemples Cortex-A Applications haute performance (OS, smartphones) Snapdragon (Qualcomm), Apple M1\/M2 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-2799","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/workboot.fr\/ciela\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Introduction \u00e0 ARM ARM est une architecture de processeurs bas\u00e9e sur le concept&nbsp;RISC&nbsp;(Reduced Instruction Set Computer), ce qui signifie qu&rsquo;elle utilise un ensemble d&rsquo;instructions simplifi\u00e9es pour une ex\u00e9cution plus rapide et une consommation d&rsquo;\u00e9nergie r\u00e9duite. Caract\u00e9ristiques principales : Familles de processeurs ARM Famille Utilisation Exemples Cortex-A Applications haute performance (OS, smartphones) Snapdragon (Qualcomm), Apple M1\/M2\u2026","_links":{"self":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2799","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/comments?post=2799"}],"version-history":[{"count":2,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2799\/revisions"}],"predecessor-version":[{"id":2803,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2799\/revisions\/2803"}],"wp:attachment":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/media?parent=2799"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}