0% ont trouvé ce document utile (0 vote)
30 vues29 pages

02 Codage

Le chapitre 2 aborde le codage, le langage machine et les instructions, en se concentrant sur la représentation des nombres et des données informatiques. Il explique les systèmes de numération, notamment le binaire et l'hexadécimal, ainsi que la représentation des informations dans la mémoire des ordinateurs. Enfin, il présente le langage machine, les types de processeurs et le langage d'assemblage, tout en introduisant le traitement des programmes en langage d'assemblage.
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
30 vues29 pages

02 Codage

Le chapitre 2 aborde le codage, le langage machine et les instructions, en se concentrant sur la représentation des nombres et des données informatiques. Il explique les systèmes de numération, notamment le binaire et l'hexadécimal, ainsi que la représentation des informations dans la mémoire des ordinateurs. Enfin, il présente le langage machine, les types de processeurs et le langage d'assemblage, tout en introduisant le traitement des programmes en langage d'assemblage.
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 2

Codage, langage machine et


instructions
Jean Privat
Université du Québec à Montréal

INF2170 — Organisation des ordinateurs et assembleur


Automne 2013

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 1 / 29


Plan

1 Représentation des nombres

2 Représentation des données informatiques

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 2 / 29


Rappel

Données et instructions
Sont en mémoire
Partagent la même forme
Tout est des bits
Qu’est-ce que la mémoire ?
Un grand tableau de cellules

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 3 / 29


Cellules mémoires

Contiennent
Pas vraiment des valeurs décimales
Mais des valeurs binaires
La « signification » des valeurs binaires
N’est pas stockée dans la cellule
Mais dépend du sens que peut leur donner le
« lecteur »

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 4 / 29


Plan

1 Représentation des nombres

2 Représentation des données informatiques

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 5 / 29


Système de numération
Qu’est-ce qu’un nombre ?
Une quantité
La mesure de quelque chose

Sa représentation ?
11012
158
D16
1310
XIII
« treize »
Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 6 / 29
Représentation des nombres

Les chiffres
Les briques de bases pour représenter un nombre

Système décimal
Il n’est pas plus « vrai » que les autres systèmes
Mais c’est celui dont on a l’habitude

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 7 / 29


Notation positionnelle

Les puissance de la base du système


Base 10 : 1 (un), 10 (dix), 100 (cent), 1000 (mille),
etc.
Exemple
10110 = 1 × 102 + 0 × 101 + 1 × 100
1012 = 1 × 22 + 0 × 21 + 1 × 20 = 510

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 8 / 29


Système binaire

2 chiffres
0 et 1
Exercices
11012 = ?
110011010101012 = ?

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 9 / 29


Décimal → binaire
Principe
Suite de division entière par 2
On conserve les restes (en ordre inverse)

Exemple
1910 /2 = 9 reste 1
9/2 = 4 reste 1
4/2 = 2 reste 0
2/2 = 1 reste 0
1/2 = 0 reste 1
0 donc 1910 = 100112
Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 10 / 29
Décimal → binaire (alternative)
Principe alternatif
Suite de soustractions des puissances de 2
On soustrait les plus gros en premier

Exemple
1910 ≥ 16 ? oui on note 1, il reste 3
310 ≥ 8 ? non on note 0, il reste 3
310 ≥ 4 ? non on note 0, il reste 3
310 ≥ 2 ? oui on note 1, il reste 1
110 ≥ 1 ? oui on note 1, il reste 0
donc 1910 = 100112
Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 11 / 29
Système hexadécimal
Le binaire (base 2), c’est bien
2 chiffres : 0 et 1
Représentation native de la machine
Mais trop de chiffres dans les nombres

L’hexadécimal (base 16), c’est mieux


16 chiffres : 0 à 9 et A, B, C, D, E et F
Moins de chiffres dans les nombres
Passages faciles binaire → hexadécimal
et hexadécimal → binaire

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 12 / 29


Hexadécimal ↔ binaire

Principe
On part de la droite
4 bits ↔ 1 chiffre hexadécimal
On utilise la table pour trouver l’équivalent

Exemple
1000112 ↔ ”0010 0011” ↔ ”2 3” ↔ 2316

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 13 / 29


Préfixes d’unités

Normes ISO et CEI


kilo (k) 103 kibi (Ki) 210 = 1 024
méga (M) 106 mébi (Mi) 220 = 1 048 576
giga (G) 109 gibi (Gi) 230 = 1 073 741 824
téra (T) 1012 tébi (Ti) 240 = 1 099 511 627 776
mili (m) 10−3
micro (µ) 10−6
nano (n) 10−9

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 14 / 29


Plan

1 Représentation des nombres

2 Représentation des données informatiques

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 15 / 29


Représentation de l’information
Les ordinateurs actuels sont binaires
Le bit est la plus petite unité d’information
L’octet (groupe de 8 bits, byte) est la plus petite
unité d’information adressable
Octet
28 = 256 combinaison de bits différents
(de 00000000 à 11111111)
ou 2 chiffres hexadécimaux
(de 00 à FF)

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 16 / 29


Données

Les données manipulées


Sont de nature diverse
Doivent être représentés sous forme binaire
Occupent des zones mémoire de longueur fixes ou
variables
Mot mémoire
L’unité de base des zones de longueur fixes
En Pep/8, un mot = 2 octets (16 bits)

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 17 / 29


Mot mémoire

En mémoire
Un mot regroupe plusieurs octets
L’adresse d’un mot et celle du premier octet

3AB
3AC moitié un adresse
3AD moitié deux
3AE

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 18 / 29


Boutisme (Endianness)

L’ordre de rangement des octets d’un mot

3AB 3AB
3AC AB ABCD CD 3AC
3AD CD AB 3AD
3AE 3AE

Gros boutisme Petit boutisme

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 19 / 29


Représentation des nombres entiers

Non signés sur 16 bits


0 à 65535
15 3 2 1 0
Exemple : 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 0 = 19010

Signés sur 16 bits


Le bit de poids fort code le signe
Pour les positifs, on utilise les 15 bits restants
Pour les négatifs... la semaine prochaine

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 20 / 29


Représentation des caractères
Représentation ASCII
Représenté par un code de 7 bits
ASCII = American Standard Code for Information
Interchange

Représentation ISO 8859-1 (dite latin 1)


Représenté par un code de 8 bits
Inclue l’ASCII
Inclue les lettres accentuées
Représentation Unicode
Bien plus compliqué
Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 21 / 29
Langage machine

Instructions
Codes d’opérations = quoi faire
Codes d’opérandes = où trouver les opérandes

Catégories d’instructions
Instruction arithmétiques (calculs)
Instructions logique
Instructions de transfert (déplacement d’information)
Instructions de contrôle (déroulement de l’exécution)

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 22 / 29


Langage machine : exemple
Adresse Instruction
2100 C1212C
2103 B001F4
2106 0E211E
2109 C1211E
210C E12128
210F C1212C
2112 E1212A
2115 712128
2118 E1212C
211B 042103
211E ...

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 23 / 29


Types de processeur
CISC
complex instruction-set computer
Plein d’instruction compliqués
Programmes cours et lisibles

RISC
reduced instruction-set computer
Que des instructions simples
Plus de registres et de cache

Hybride
CISC émulé par du RISC
Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 24 / 29
Langage d’assemblage

Principe :
Forme symbolique du langage machine
Remplacement des instructions par des mots
Remplacement des adresses par des symboles
On peut mettre des commentaires
Plusieurs formes de valeurs littérales

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 25 / 29


Langage d’assemblage : exemple

Fibo : LDA somme , d


Boucle : CPA 500 , i ; w h i l e ( somme < 500)
BRGE Affiche ; {
LDA dernier , d
STA a vant , d ; avant = d e r n i e r ;
LDA somme , d
STA dernier , d ; d e r n i e r = somme ;
ADDA a vant , d
STA somme , d ; somme = a v a n t+d e r n i e r ;
BR Boucle ; } // w h i l e
Affiche : . . .

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 26 / 29


Traitement d’un programme en
langage d’assemblage

Programme Liste du
Assembleur programme
source
Données
Programme
objet Éditeur de Programme
lien objet
Bibliothèques Chargeur chargé

Résultats

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 27 / 29


La semaine prochaine

Arithmétique informatique
Entiers relatifs et calculs

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 28 / 29


Bibliographie

Notes de cours
Chapitre 3 : Codage de l’information

Livres
Sections 3.1, 3.2, 3.4, 3.5, 3.6, 3.7

Programmes
02-fibo.pep

Jean Privat (UQAM) 02 — Codage INF2170 — Automne 2013 29 / 29

Vous aimerez peut-être aussi