Menu
Coddy logo textTech

L'importance du saut de ligne

Fait partie de la section Fondamentaux du Journey Assembly de Coddy. Leçon 41 sur 45.

Vous avez ajouté 0x0a (saut de ligne) à la fin de vos chaînes. Mais que se passe-t-il si vous l’oubliez ?

Sans saut de ligne :

Le texte s’affiche, mais le curseur reste sur la même ligne. Toute sortie future apparaîtra juste à côté.

Exemple sans nouvelle ligne :

section .data
    first db 'Hello'
    firstLen equ $ - first
    second db 'World'
    secondLen equ $ - second

section .text
    mov rax, 1
    mov rdi, 1
    mov rsi, first
    mov rdx, firstLen
    syscall

    mov rax, 1
    mov rdi, 1
    mov rsi, second
    mov rdx, secondLen
    syscall

Sortie :

HelloWorld

Pas d’espace. Pas de nouvelle ligne. Tout est collé.

Avec un saut de ligne :

section .data
    first db 'Hello', 0x0a
    firstLen equ $ - first
    second db 'World', 0x0a
    secondLen equ $ - second

Sortie :

Hello World

Chaque chaîne s’affiche sur sa propre ligne.

Ce que fait le saut de ligne :

CaractèreASCIIEffet
0x0a10Déplace le curseur au début de la ligne suivante

Erreurs courantes liées aux sauts de ligne :

ErreurRésultat
Aucun saut de ligneLe texte s’enchaîne sur une seule ligne
Saut de ligne uniquement à la fin de la dernière chaîneLes chaînes précédentes s’enchaînent, la dernière passe à la ligne suivante
Saut de ligne au milieu d’une chaîneLes lignes se coupent à des endroits inattendus

La règle de sécurité :

Ajoutez toujours 0x0a à la fin de chaque chaîne que vous souhaitez afficher sur sa propre ligne.

challenge icon

Défi

On vous donne trois chaînes sans sauts de ligne. Votre tâche consiste à les afficher afin qu’elles apparaissent sur trois lignes distinctes.

Les chaînes sont les suivantes :

ChaîneValeur
word1'Apple'
word2'Banana'
word3'Cherry'

Exigences :

  • Définir chaque chaîne avec un saut de ligne (0x0a) à la fin
  • Calculer automatiquement la longueur de chaque chaîne
  • Afficher les trois chaînes à l’aide de l’appel système write
  • Quitter proprement avec le code 0

Essayez vous-même

section .data
    ; TODO: Définir word1 avec le 1er texte listé dans les instructions et un saut de ligne
    ; TODO: Définir word2 avec le 2e texte listé dans les instructions et un saut de ligne
    ; TODO: Définir word3 avec le 3e texte listé dans les instructions et un saut de ligne
    ; TODO: Calculer les longueurs pour chaque chaîne

section .text
    global _start

_start:
    ; TODO: Afficher word1
    ; TODO: Afficher word2
    ; TODO: Afficher word3

    ; TODO: Quitter proprement
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Assembly