Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
S
Système exploitation
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Cours L3 Info
Système exploitation
Commits
ac7f3e03
Commit
ac7f3e03
authored
5 months ago
by
Lucas B
Browse files
Options
Downloads
Patches
Plain Diff
Debut du projet (structure) : En attente de savoir dans quoi on enregistre les donnees
parent
400e0dfd
Branches
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
Projets/enregistrement.asm
+188
-0
188 additions, 0 deletions
Projets/enregistrement.asm
with
188 additions
and
0 deletions
Projets/enregistrement.asm
0 → 100644
+
188
−
0
View file @
ac7f3e03
section
.data
;/***************************************************************************************************************************/
;/************************************************* Different Texte Utiliser ************************************************/
;/***************************************************************************************************************************/
; Texte pour le menu
t_menu:
db
"
1
Enregistrer
du
personnel
", 10, "
2
Lister
des
personnes
enregistr
é
es
", 10, "
3
Supprimer
une
personne
sp
é
cifique
", 10, "
4
Afficher
la
personne
la
plus
â
g
é
e
,
et
la
personne
la
plus
jeune.
", 10, "
5
Afficher
l
'â
ge
moyen
de
toutes
les
personnes
enregistr
é
es
", 10, "
6
Quitter
le
programme
"
,
10
lent_menu:
equ
$
-
t_menu
; Texte pour l'enregistrement
t_enregistrement:
db
"
Enregistrement
des
personnes
:
"
,
10
lent_enregistrement:
equ
$
-
t_enregistrement
; Texte pour le listing
t_lister:
db
"
Liste
des
personnes
:
"
,
10
lent_lister:
equ
$
-
t_lister
; Texte pour la suppresion
t_supprimer:
db
"
Suppression
la
personne
"
,
10
lent_supprimer:
equ
$
-
t_supprimer
t_supprimerValid1:
db
"
Personne
"
lent_supprimerValid1:
equ
$
-
t_supprimerValid1
t_supprimerValid2:
db
" a ete supprimée !"
,
10
lent_supprimerValid2:
equ
$
-
t_supprimerValid2
t_supprimerErreur:
db
"
Cette
personne
n
'
existe
pas
!"
,
10
lent_supprimerErreur:
equ
$
-
t_supprimerErreur
; Texte pour la recherche
t_recherche:
db
"
Plus
â
g
é
e
et
plus
jeune
:
"
,
10
lent_recherche:
equ
$
-
t_recherche
; Texte pour la moyenne
t_moyenne:
db
"
Age
en
moyenne
:
"
,
10
lent_moyenne:
equ
$
-
t_moyenne
t_po:
db
"("
lent_po:
equ
$
-
t_po
t_pf:
db
")"
lent_pf:
equ
$
-
t_pf
;/***************************************************************************************************************************/
;/*********************************************** Differente Variable Utiliser **********************************************/
;/***************************************************************************************************************************/
; Variable pour le choix de l'operation a effectuer
v_choix:
db
"12"
lenv_choix:
equ
$
-
v_choix
section
.text
global
_start
_start:
;/***************************************************************************************************************************/
;/***************************************************** Gestion du menu *****************************************************/
;/***************************************************************************************************************************/
l_menu:
;/************ Affichage du menu ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_menu
; On affiche le contenu a partir du pointeur t_menu
mov
edx
,
lent_menu
; On affiche lent_menu variable
int
80h
; On execute l'appel Systeme
;/************ Choix de l'action a effectuer ************/
mov
eax
,
3
; Appel systeme read
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
v_choix
; On enregistre a partir du pointeur v_choix
mov
edx
,
2
; On enregistre les 2 premiers caractere (le chiffre + entrer)
int
80h
; On execute l'appel Systeme
;/************ Redirection dans le programme ************/
cmp
byte
[
v_choix
],
'1'
; Si le choix est 1 (Enregistrer une personne)
je
l_enregistrement
; Je vais vers le label l_enregistrement
cmp
byte
[
v_choix
],
'2'
; Si le choix est 2 (Lister les personnes)
je
l_lister
; Je vais vers le label l_lister
cmp
byte
[
v_choix
],
'3'
; Si le choix est 3 (Supprimer une personne)
je
l_supprimer
; Je vais vers le label l_supprimer
cmp
byte
[
v_choix
],
'4'
; Si le choix est 4 (rechercher la personne la plus agée et la plus jeune)
je
l_recherche
; Je vais vers le label l_recherche
cmp
byte
[
v_choix
],
'5'
; Si le choix est 5 (Calculer la moyenne d'age)
je
l_moyenne
; Je vais vers le label l_moyenne
cmp
byte
[
v_choix
],
'6'
; Si le choix est 6 (Quitter le programme)
je
l_exit
; Je vais vers le label l_exit
jmp
l_menu
; Sinon je reaffiche le menu (l_menu)
;/***************************************************************************************************************************/
;/************************************************** Choix 1 Enregistrement *************************************************/
;/***************************************************************************************************************************/
l_enregistrement:
;/************ Affichage du message d'enregistrement ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_enregistrement
; On affiche le contenu a partir du pointeur t_enregistrement
mov
edx
,
lent_enregistrement
; On affiche lent_enregistrement variable
int
80h
; On execute l'appel Systeme
; TODO
jmp
l_menu
; lorsque on a terminer on raffiche le menu
;/***************************************************************************************************************************/
;/****************************************************** Choix 2 Lister *****************************************************/
;/***************************************************************************************************************************/
l_lister:
;/************ Affichage du message pour le listing ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_lister
; On affiche le contenu a partir du pointeur t_lister
mov
edx
,
lent_lister
; On affiche lent_lister variable
int
80h
; On execute l'appel Systeme
; TODO
jmp
l_menu
; lorsque on a terminer on raffiche le menu
;/***************************************************************************************************************************/
;/***************************************************** Choix 3 Supprimer ***************************************************/
;/***************************************************************************************************************************/
l_supprimer:
;/************ Affichage du message pour la suppression ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_supprimer
; On affiche le contenu a partir du pointeur t_supprimer
mov
edx
,
lent_supprimer
; On affiche lent_supprimer variable
int
80h
; On execute l'appel Systeme
; TODO
jmp
l_lister
; lorsque on a terminer on affiche la lister des personnes mise a jours
jmp
l_menu
; Si il y a une erreur on reafiche le menu
;/***************************************************************************************************************************/
;/***************************************************** Choix 4 Recherche ***************************************************/
;/***************************************************************************************************************************/
l_recherche:
;/************ Affichage du message pour la recherche du plus âgée et du plus jeune ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_recherche
; On affiche le contenu a partir du pointeur t_recherche
mov
edx
,
lent_recherche
; On affiche lent_recherche variable
int
80h
; On execute l'appel Systeme
; TODO
jmp
l_menu
; lorsque on a terminer on raffiche le menu
;/***************************************************************************************************************************/
;/****************************************************** Choix 5 Moyenne ****************************************************/
;/***************************************************************************************************************************/
l_moyenne:
;/************ Affichage du message pour la moyenne ************/
mov
eax
,
4
; Appel systeme write
mov
ebx
,
1
; Sur la sortie standart
mov
ecx
,
t_moyenne
; On affiche le contenu a partir du pointeur t_moyenne
mov
edx
,
lent_moyenne
; On affiche lent_moyenne variable
int
80h
; On execute l'appel Systeme
; TODO
jmp
l_menu
; lorsque on a terminer on raffiche le menu
;/***************************************************************************************************************************/
;/*********************************************** Choix 6 Quitter le programme **********************************************/
;/***************************************************************************************************************************/
l_exit:
;/************ Arret du programme ************/
mov
eax
,
1
; Appel systeme exit
mov
ebx
,
0
; Code de retour 0 (succes)
int
80h
; On execute l'appel Systeme
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment