Anda di halaman 1dari 187

Dr.

Gilles OLIVE

Chimie Industrielle
TRAVAUX PRATIQUES

TP 1

ACIDIMETRIE_________________________________________________________ (30)

TP 2

CHROMATOGRAPHIE SUR PAPIER______________________________________ (40)

TP 3

SYNTHESE DE L'ACIDE ACETYLSALICYLIQUE___________________________ (43)

TP 4

SYNTHSE DU PARACETAMOL _________________________________________ (47)

TP 5

ANALYSE D'UNE EAU __________________________________________________ (49)

TP 6

MICROPROCESSEUR Z80_______________________________________________ (95)

TP 7

EAU FORTE __________________________________________________________ (156)

TP 8

DETERMINATION D'ENTHALPIES _____________________________________ (157)

TP 9

EXTRACTION DAROME ______________________________________________ (160)

TP 10 VISCOSIMETRIE _____________________________________________________ (163)

Tome TP

Dr. Gilles OLIVE

C'est une leon que vous devriez observer:


Essayez, essayez, essayez encore.
Si, tout d'abord, vous ne russissez pas,
Essayez, essayez, essayez encore.
(W.-E. Hickson)

On acquiert la connaissance des choses en les apprenant de quelqu'un ou en les dcouvrant par soi-mme. Ce
qu'on apprend vient d'une autre personne ou d'une aide extrieure ; ce que l'on dcouvre est autonome et d ses
propres efforts. Il est rare et difficile de dcouvrir sans chercher, mais si l'on cherche, la dcouverte est frquente
et facile ; par contre, si l'on ne sait pas comment chercher, la dcouverte est impossible.
(Archytus, Savant grec, 380 avant J.-C.)

La chimie thorique c'est quand on comprend tout mais que rien ne marche.
La pratique c'est quand tout marche mais on ne sait pas pourquoi.
Si on a russi les deux, rien ne marche et on ne comprend pas pourquoi.
(Anonyme)

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

INTRODUCTION

Ces TP ne sont pas des TP compliqus. D'ailleurs beaucoup ont dj t raliss au cours des annes
antrieures du cursus. Ces TP sont voir du ct contrle qualit dans le cadre d'une entreprise
certifie ISO 900X. Le but de l'enseignement qui suit est donc de former l'tudiant au respect des
procdures. Moi dans ce cadre, je ne suis plus le professeur, mais le directeur d'une entreprise
certifie qui emploie des techniciens.
Attention, vous tes en 3me anne et non plus en 1re anne. On vous demande donc de rflchir tout en
respectant les procdures. Les procdures dans le cadre de la qualit doivent tre respectes, et sont
parfaitement dcrites, sauf que le matriel n'est que rarement indiqu et c'est vous qui devez toujours
choisir le matriel adquat. Un dirigeant saura reconnatre rapidement, en fonction du choix du
matriel, un bon technicien. La prparation d'un laboratoire n'est donc pas seulement la recopie
du syllabus mais une analyse prcise de ce qu'on demande.
Ces laboratoires ont t conus pour tudiant seul pendant 4 heures. Vous tes par binme pendant
3h20. Ce qui veut dire que vous devez vous organiser pour optimiser le temps. Je rappelle que le non
respect de la procdure (ordre des oprations, non remise zro d'un appareil, etc.) ou tout retard dans
l'analyse cote cher l'entreprise. Pour mmoire, un atelier industriel produit 22 tonnes par heure.
Toute minute de retard c'est donc 367 kg de produit qui seront au mieux vendu en qualit technique
(quasiment un facteur 1000 au niveau du prix). Il est aussi noter que toute modification de protocole,
ainsi que toute erreur dans son excution doit tre clairement indique afin que la direction puisse
valuer l'impact et choisir ainsi le devenir du produit incrimin.
Vous remarquerez qu'il y a une logique dans l'ordre des TP. Ils ne sont pas aussi indpendants que ce
que l'on pense. Par exemple, au premier TP (acidimtrie), vous allez prparer des solutions qui
serviront pour les autres. Vous verrez aussi des techniques que vous utiliserez par la suite. La chimie
forme un tout, et une fois un concept manipul, il ne faut pas tourner la page ; il sert encore souvent
par la suite.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
4
Vous devez avoir votre propre cahier o vous numroterez les pages. La premire page doit comporter
clairement votre nom, le nom de l'cole ainsi que l'anne acadmique d'tude. Lors des prparations de
vos laboratoires vous n'crirez que sur les pages de droite, les pages de gauches tant rserves aux
modifications apportes au protocole ainsi qu'aux rsultats et aux erreurs. Vous adopterez la
prsentation suivante pour chaque laboratoire:
Date de la manip

Titre de la manipulation

Un code vous

Rfrence bibliographique:
But de la manipulation:
Ractions:
A + B

C + D

MMA + MMB

MMC + MMD

Constantes physico-chimiques intressantes en rouge comme les masses molaires


Gnralits:
Manipulation:
En style plus ou moins tlgraphique, mais refaisable par un homme de l'art et le plus complet
possible (avec information de couleur, de changement de temprature, etc. ...).
Si la manipulation se fait sur plusieurs jours, on indique la nouvelle date dans la marge ...

Numro de page

Les rapports de laboratoires, sauf cas contraire, sont rendre la sance qui suit. Un seul rapport par
binme est suffisant. Vous devrez obligatoirement utiliser les feuilles que je vous donne, mme si
elles contiennent des imperfections (parfois volontaire): ceci est dans un but de vous contraindre
vous adapter, car beaucoup d'entreprises ont leur propre modle.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

TP 0 INFORMATIONS DIVERSES
0.1.
!

Calcination au bec bunsen

!
!

Laisser scher partiellement le filtre sur verre de montre, avec signe de reconnaissance
quelques minutes dans une tuve 95-100 C.
Prparer trpied et triangle, voir ci-contre
Transfrer le filtre encore humide, ouverture vers le
bas, dans le creuset.
Couvrir le creuset par un capuchon en porcelaine
(fragile !) pendant la calcination pour viter
l'inflammation du papier.
Calciner dans les mmes conditions que celles qui
ont permis, d'amener le creuset poids constant:
soit au four lectrique;
soit au bec bunsen. Dans ce cas, on
carbonise d'abord petite flamme en
augmentant le chauffage partir du
moment o la fume se dgage. On
calcine ensuite (2-3 min au-dessus du
cne bleu) jusqu' disparition totale du
papier
(20

25
min)
Aprs
refroidissement au dessiccateur, peser et recommencer la calcination jusqu' poids
constant.

!
!

0.2.

Solutions tampon

0.2.1.

Premier mlange1

La Table 1 explique la prparation des principales solutions tampon, donne la gamme de pH, la
variation du pH avec la temprature.
Chaque solution est caractrise par un numro d'ordre qui permet (voir Table 2) de trouver le volume
ajouter selon le pH dsir.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

Table 1
Solution tampon
(
N
)

Composants
A

1 KCl 0,2M
2

Hydrognophtalate de
potassium 0,1 M

Mlange

B
HCl 0,2M
HCl 0,1 M

3 Idem

NaOH 0, 1 M

4 KH2PO4 0,1 M

NaOH 0,1 M

Tris 0,2 M
HCl 0,1 M
(hydroxymthyl)aminothane

6 Na2B4O7 (Borax) 0,025 M

HCl 0,1 M

7 Idem

NaOH 0,1 M

8 Na2HPO4 0,05M

NaOH 0,1 M

25 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)
50 ml A + x ml B
Amener 100 ml (H2O)

dpH/dt

Gamme de
pH 25 C

1,0 - 2,2

+0,001

2,4 - 4,0

4,2 - 6,2

-0,003

6,2 - 8,0

-0,020

7,2 - 9,0

-0,005

8,0 - 9,1

-0,010

9,4 - 10,6

-0,003

10,9 - 12,0

Table 2
SOLUTION TAMPON N
1
2
3
4
5
6
7
pH x(ml) pH x(ml) pH x(ml) pH x(ml) pH x(ml) pH x(ml) pH x(ml)
1,0 67,0 2,4 42,2 4,2
3,0
5,8
3,6
7,0 46,6 8,0 20,5 9,4
6,2
1,2 42,5 2,6 35,4 4,4
6,6
6,0
5,6
7,2 44,7 8,2 18,8 9,6 11,1
1,4 26,6 2,8 28,9 4,6 11,1 6,2
8,1
7,4 42,0 8,4 16,6 9,8 15,0
1,6 16,2 3,0 22,3 4,8 16,5 6,4 11,6 7,6 38,5 8,6 13,5 10,0 18,3
1,8 10,2 3,2 15,7 5,0 22,6 6,6 16,4 7,8 34,5 8,8
9,6 10,2 20,5
2,0
6,5
3,4 10,4 5,2 28,8 6,8 22,4 8,0 29,2 9,0
4,6 10,4 22,1
2,2
3,9
3,6
6,3
5,4 34,1 7,0 29,1 8,2 22,9
10,6 23,3
3,8
2,9
5,6 38,8 7,2 34,7 8,4 17,2
5,8 42,3 7,4 39,1 8,6 12,2
6,0 45,0 7,6 42,8 8,8
8,5
6,2 46,7 7,8 45,3 9,0
5,7
8,0 46,7
* Extrait de Handbook of Chemistry and Physics, 63rd dition, CRC Press, 1982-1983.

CHIMIE INDUSTRIELLE

07/01/2005

8
pH x(ml)
11,0 4,1
11,2 6,3
11,4 9,1
11,6 13,5
11,8 19,4
12,0 26,9

1re Edition

Tome TP
0.2.2.

Dr. Gilles OLIVE


Deuxime mlange2

Table 3
Buffer solutions
pH-value at Quantity relate to 1
20 C
litre
pH 1
3.73 g
134 ml
pH 2
6.43 g
3.58 g
8.2 ml
pH 3

8.47g
3.49 g
20.6 ml

pH 4

11.76 g
2.57 g
68 ml

pH 5

20.26 g
196.4 ml

pH 6

12.53 g
159.6 ml

pH 7

3.52 g
7.26 g

pH 8

4.77 g
20.5 ml
4.77 g
4.6 ml
4.77 g
18.3 ml
3.7 g
6.21 g
4g
4.45 g
0.9 g
0.375 g
0.222 g
95 ml

pH 9
pH 10
pH 11
pH 12
pH 13

CHIMIE INDUSTRIELLE

Substance
Potassium chloride (KCl)
Hydrochloric acid 1 mol/l (HCl)
Citric acid(C6H8O7.H2O)
Sodium chloride (NaCl)
Hydrochloric acid 1 mol/l (HCl)
with fungicide additive
Citric acid(C6H8O7.H2O)
Sodium chloride (NaCl)
Sodium hydroxide 1 mol/l (NaOH)
with fungicide additive
Citric acid(C6H8O7.H2O)
Sodium chloride (NaCl)
Sodium hydroxide 1 mol/l (NaOH)
with fungicide additive
Citric acid(C6H8O7.H2O)
Sodium hydroxide 1 mol/l (NaOH)
with fungicide additive
Citric acid(C6H8O7.H2O)
Sodium hydroxide 1 mol/l (NaOH)
with fungicide additive
Potassium dihydrogen phosphate (KH2PO4)
di-Sodium hydrogen phosphate (Na2HPO4.2 H2O)
with fungicide additive
Sodium tetraborate (Na2B4O7.10 H2O)
Hydrochloric acid 1 mol/l (HCl)
Sodium tetraborate (Na2B4O7.10 H2O)
Hydrochloric acid 1 mol/l (HCl)
Sodium tetraborate (Na2B4O7.10 H2O)
Sodium hydroxide 1 mol/l (NaOH)
Potassium chloride (KCl)
Boric acid (H3BO3 )
Sodium hydroxide (NaOH)
di-Sodium hydrogen phosphate (Na2HPO4.2 H2O)
Sodium hydroxide (NaOH)
Glycine (NH2CH2COOH)
Sodium chloride (NaCl)
Sodium hydroxide 1 mol/l (NaOH)

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

0.2.3.

Troisime mlange3

Les solutions mres et les solutions tampons doivent tre prpares avec de l'eau bi-distille, exempte
de CO2. Les volumes x (en ml) de solutions mres ncessaires pour obtenir les diffrentes valeurs pH,
sont indiqus la table suivante (Table 5 page 9).
Table 4
Solution
tampon
N
1
2
3
4

idem N 3

NaOH 0,1 mol/l

idem N 2

NaOH 0,1 mol/l

potassium dihydrognophosphate
1/15 mol/l [KH2PO4: 9,073 g/l]

di-sodiumhydrogno-phosphate
1/15 mol/l
[Na2HPO4.2 H2O: ll,87 g/l]

7
8
9
10
11
12
13
14
15
*

Solutions mres et leurs concentrations


en quantit de matire
A
B
glycine 0,1 mol/l + NaCl 0,1 mol/l
HCl 0,1 mol/l
[glycine: 7,507 g/l + NaCl: 5,844 g/l]
di-sodiumcitrate 0,1 mol/l
[acide citrique monohydrat: 21,014 g/l HCl 0,1 mol/l
+ 200 ml NaOH 1 mol/l]
potassium hydrognophtalate 0,1 mol/l
HCl 0,1 mol/l
[C8H5KO4: 20,42 g/l]

Acide dithyl-5,5-barbiturique,
HCl 0,1 mol/l
sel de sodium 0,1 mol/l
[Barbital-Na: 20,62 g/l]
Borax solution 0,05 mol/l
[H3BO3: 12,37 g/l + 100 ml NaOH 1 HCl 0,1 mol/l
mol/l]

Composition de
la solution tampon
x parts A +
(100-x) parts B
x parts A +
(100-x) parts B
50 ml A + x ml B
100 ml*
50 ml A + x ml B
100 ml*
x parts A +
(100-x) parts B
x parts A +
(100-x) parts B
x parts A =
(100-x) parts B
x parts A +
(100-x) parts B
x parts A +
(100-x) parts B

idem N 1

NaOH 0,1 mol/l

Acide citrique 0,1 mol/l


[acide citrique monohydrat: 21,014
g/l]
Sodium actate 0,1 mol/l
[C2H3O2Na: 8,204 g/l ou C2H3O2Na.3
H2O: 13,61 g]
Imidazole 0,2 mol/l
[C3H4NO3: 13,62 g/l]
Trithanolamine 0,5 mol/l + Titriplex
III
[C6H15NO3: 74,60 g/l + Titriplex III: 20
g/l]
Tris(hydroxymthyl)aminomthane 0,2
mol/l [TRIS: 24,23 g/l]
Sodium carbonate 0,1 mol/l (10,60 g/l)
[Na2CO3: 10,60 g/l|

di-sodiumhydrogno-phosphate
x parts A +
0,2 mol/l [Na2HPO4.2 H2O: 35,60
(100-x) parts B
g/l]
acide actique 0,1 mol/l

x parts A +
(100-x) parts B

HCl 0,1 mol/l

25 ml A +
x ml B 100 ml*

HCl 0,05 mol/l

10 ml A +
x ml B 100 ml*

25 ml A +
x ml B 100 ml*
Sodium hydrogno-carbonate 0,1 x parts A +
mol/l [NaHCO3: 8,401 g/l]
(100-x) parts B
HCl 0,1 mol/l

complter jusq' 100 ml

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
9
Table 5 - Ce tableau indique le volume x (en ml) des solutions mres (prpares selon les indications
page 8 Table 4) afin d'obtenir une solution tampon avec une valeur pH dtermine.
pH
1,0
1,2
1,4
1,6
1,8
2,0
2,2
2,4
2,6
2,8
3,0
3,2
3,4
3,6
3,8
4,0
4,2
4,4
4,6
4,8
5,0
5,2
5,4
5,6
5,8
6,0
6,2
6,4
6,6
6,8
7,0
7,2
7,4
7,6
7,8
8,0
8,2
8,4
8,6
8,8
9,0
9,2
9,4
9,6
9,8
10,0
10,2
10,4
10,6
10,8
11,0
11,2
11,4
11,6
11,8
12,0
12,2
12,4
12,6
12,8
pH

11,1
26,4
36,2
43,9
50,7
56,5
62,3
68,4
74,7
81,0
86,2
90,3

9,0
17,9
23,6
27,6
30,2
32,2
34,1
36,0
37,9
39,9
42,1
44,8
47,8
51,2
55,1
60,0
66,4
74,9
85,6

3,0
6,7
11,1
16,5
22,6
28,8
34,4
39,1
42,4
45,0
46,7

CHIMIE INDUSTRIELLE

87,1
78,0
70,3
64,5
60,3
57,2
54,8
53,2

99,2
98,4
97,3
95,5
92,8
88,9
83,0
75,4
65,3
53,4
41,3
29,6
19,7
12,8
7,4
3,7

53,3
55,0
57,6
60,8
65,2
70,6
75,6
81,2
86,2
90,1
93,2

53,0
55,4
58,0
62,1
66,9
73,6
83,5
95,6

10

98,8
94,5
90,0
85,1
80,3
76,0
72,0
68,4
65,1
62,0
59,1
56,4
53,7
51,2
49,0
46,9
44,7
42,2
40,0
37,4
34,5
31,4
27,9
23,5
19,0
13,8
9,8
6,8
4,6

41,0
34,3
27,8
21,6
15,9
10,9
6,7
3,3
0,0

100,0

94,7
92,0
88,4
84,0
78,9
73,2
67,2
62,5
58,8
55,7
53,6
52,2
51,2
50,4
49,5
48,7
47,6
46,0
43,2
39,1
31,8
21,4
9

07/01/2005

11

12

13

14

15

10,9
16,6
23,9
33,5
44,9
56,6
67,8
76,8
84,0
89,3

43,4
40,4
36,5
31,4
25,4
19,6
14,6
10,2
6,6

86,2
79,6
71,3
62,0
52,0
42,0
31,9
22,5
16,0
11,7

44,7
42,0
39,3
33,7
27,9
22,9
17,3
13,0
8,8
5,3
10,0
18,4
29,3
42,0
53,4
63,7
73,1
81,2
87,9

10

11

12

13

14

15

pH
1,0
1,2
1,4
1,6
1,8
2,0
2,2
2,4
2,6
2,8
3,0
3,2
3,4
3,6
3,8
4,0
4,2
4,4
4,6
4,8
5,0
5,2
5,4
5,6
5,8
6,0
6,2
6,4
6,6
6,8
7,0
7,2
7,4
7,6
7,8
8,0
8,2
8,4
8,6
8,8
9,0
9,2
9,4
9,6
9,8
10,0
10,2
10,4
10,6
10,8
11,0
11,2
11,4
11,6
11,8
12,0
12,2
12,4
12,6
12,8
pH

1re Edition

Tome TP
0.2.4.

10

Dr. Gilles OLIVE


Proprits des tampons2

Cette table se rapporte aux solutions prsentes la Table 3.


buffer0 C 10 C 20 C 30 C 40 C 50 C 60 C 70 C 80 C 90 C value

0.94 0.99 1.00 1.00 1.01 1.01 1.01 1.01 1.02 1.02 0.32
1.99 1.99 2.00 2.00 2.00 2.00 2.00 2.00 2.00 2.00 0.03
3.03 3.02 3.00 3.00 2.99 2.98 2.98 2.98 2.98 2.97 0.03
4.03 4.02 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 0.04
5.05 5.02 5.00 5.00 5.00 5.02 5.04 5.07 5.10 5.13 0.07
6.03 6.01 6.00 6.02 6.04 6.06 6.09 6.13 6.18 6.24 0.03
7.13 7.05 7.00 6.98 6.97 6.96 6.96 6.97 6.98 7.00 0.03
8.18 8.09 8.00 7.94 7.90 7.86 7.82 7.80 7.77 7.75 0.014
9.24 9.11 9.00 8.93 8.86 8.80 8.75 8.71 8.67 8.64 0.02
10.24 10.10 10.00 9.90 9.82 9.75 9.68 9.62 9.55 9.49 0.013
11.45 11.20 11.00 10.81 10.64 10.48 10.33 10.19 10.06 9.93 0.013
12.58 12.26 12.00 11.75 11.53 11.31 11.09 10.88 10.68 10.48 0.02
13.71 13.35 13.00 12.66 12.37 12.10 11.84 11.61 11.40 11.20

0.3.

Solution de calibration (pH mtre)1

Hydrognophtalate de potassium 0,05 M


KH2PO4 0,025M + Na2HPO4 0,025 M
Borax 0,01 M
0.4.

dilution
influence
pH 1/2
+0.30
+0.25
+0.10
+0.05
+0.08
+0.11
+0.06
+0.10
+0.02
+0.01
-0.04
-0.22

pH = 4,008 25 C
pH = 6,865 25 C
pH = 9,18 25C

Indicateurs colors

0.4.1.

Indicateurs de pH

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

11

Dr. Gilles OLIVE


0.4.1.1.

De Riedel-deHan2
Substances

Malachite green - oxalate


Astra diamond green GX
Brillant green
Eosin yellowish
Ethyl violet
Erythrosin
Methyl violet 6B
Cresol red
Cristal violet
Tropaeolin OO
Metanil yellow
Thymol blue water-soluble
Thymol blue
m-Cresol purple
Eosin bluish
Quinaldine red
2.4-Dinitrophenol with 0.5 ml H2O/g
4-(N.N-Dimethylamino)-azobenzene
Ethyl orange
Bromchlorphenol blue
Bromphenol blue
Tetrabromphenol blue
Congo red
Methyl orange
Bromcresol green
Chrysoidin G
Methyl red
Methy red sodium salt
Ethyl red
4-Nitrophenol
Chlorphenol red
2-Nitrophenol
Litmus
Bromcresol purple
Bromphenol red
Alizarin
Bromthymol blue
Bromthymol blue water-soluble
Phenol red
Phenol red water-soluble
3-Nitrophenol
Neutral red
Rosolic acid
Cresol red
alpha-Naphtholphthalein
Tropaeolin OOO Nr.2
m-Cresol purple
Tropaeolin OOO Nr.1
o-Cresolphthalein
Phenol violet
Thymol blue water-soluble
Thymol blue
Phenolphthalein
Thymol violet
Thymolphthalein
Methyl blue
Alizarin yellow R
Alizarin
Tropaeolin O
Indigo carmine
Orange G
Titan yellow
Rubin S

CHIMIE INDUSTRIELLE

pH - value

color changes

0.0 - 2.2
0.0 - 2.6
0.0 - 2.6
0.0 - 3.0
0.0 - 3.5
0.0 - 3.6
0.1 - 2.7
0.2- 1.8
0.8 - 2.6
1.0 - 2.8
1.2 - 2.3
1.2 - 2.8
1.2 - 2.8
1.2 - 2.8
1.4 - 2.4
1.4 - 3.2
2.0 - 4.7
2.9-4.0
3.0-4.5
3.0 - 4.6
3.0 - 4.6
3.0 - 5.0
3.0 - 5.2
3.1 - 4.4
3.8 - 5.4
4.0 - 7.0
4.4 - 6.2
4.4 - 6.2
4.5 - 6.5
4.7 - 7.9
4.8 - 6.4
5.0 - 7.0
5.0 - 8.0
5.2 - 6.8
5.3 - 6.8
5.8 - 7.2
6.0 - 7.6
6.0 - 7.6
6.4 - 8.2
6.4 - 8.2
6.6 - 8.6
6.8 - 8.0
6.9 - 8.0
7.0 - 8.8
7.3 - 8.7
7.4 - 8.6
7.4 - 9.0
7.6 - 8.9
7.8 - 9.8
8.0 - 10.0
8.0 - 9.6
8.0 - 9.6
8.2 - 9.8
9.0 - 13.0
9.3 - 10.5
9.4 - 14.0
10.0- 12.1
11.0 - 13.0
11.1 - 12.7
11.5 - 14.0
11.6 - 14.0
12.0- 13.0
12.0 - 14.0

yellow-green/blue
yellow-green
yellow-green
yellow-green fluorescent
yellow-blue
yellow brown/orange-cherry/red
yellow-violet
red-yellow (1st color change)
yellow-blue/violet
red-yellow
violet/red-yellow
violet/red-brown/yellow (1st color change)
violet/red-brown/yellow (1st color change)
red-yellow (1st color change)
colorless-pink fluorescent
colorless-pink
colorless-yellow
red-yellow
red-orange
yellow-purpur
yellow-blue/violet
yellow-blue
blue-red
red-yellow/orange
yellow-blue
orange-yellow
red-yellow/orange
red-yellow/orange
red-yellow
colorless-yellow
yellow-violet
colorless-yellow
red-blue
yellow-purpur
orange/yellow-purple
yellow-red (1st color change)
yellow-blue
yellow-blue
yellow-red
yellow-red
colorless-yellow
blue/red-orange/yellow
yellow-red
yellow-purpur (2nd color change)
redish-blue
amber color-orange
yellow-purple (2nd color change)
orange-red
colorless-red
yellow-blue/violet
green/yellow-blue (2nd color change)
green/yellow-blue (2nd color change)
colorless-red
yellow/green-violet
colorless-blue
blue-orange
light yellow-red/brown
red-purple (2nd color change)
yellow-orange/brown
blue-yellow
yellow-pink
yellow-red
purple-colorless

07/01/2005

1re Edition

Tome TP

12

Dr. Gilles OLIVE


0.4.1.2.

De Merck3

Indicateur

Domaine de virage
Changement de couleur
0,0
jaune
0,0
jaune
0,0
jaune

0,0
orange
0,1
jaune
0,1
jaune
0,2
incolore
0,2
rouge

Pourpre de m-crsol

0,8
jaune
1,2
rouge

Bleu de thymol

1,2
rouge

2,8
jaune

Bleu de p-xylnol

1,2
rouge

2,8
jaune

1,2
rouge
1,4
incolore

1,4
incolore
2,8
incolore
2,9
rouge
3,0
jaune

3,2
incolore
2,4
ros
fluorescent
3,2
rose
4,7
jaune
4,0
jaune-orange
4,6
bleu-violet

3,0
jaune

4,6
bleu-violet

3,0
bleu
3,1
rouge
4,3
rouge
3,8
jaune

5,2
jaune-orange
4,4
jaune-orange
5,2
bleu
5,4
bleu

Vert malachite-oxalate
(C.I.N 42000)
Vert brillant
(C.I.N 42040)
Eosine jauntre
(C.I.N 45380)
Erythrosine B
(C.I.N 45430)
Vert de mthyle
(CI. N 42590)
Violet de mthyle
(C.N. N 42535)
Acide picrique
(C.I.N 10305)
Rouge de crsol
Violet cristallis
(C.I.N 42555)

Pentamthoxy-2,2',2",4,4'triphnylcarbinol
Eosine bleutre
(C.I.N 45400)
Rouge de quinaldine
Dinitro-2,4-phnol
Dimthylamino-4-azobenzne
(C.I.N 11020)
Bleu de bromochlorophnol
Bleu de bromophnol
Rouge Congo
(C.I.N 22120)
Orang de mthyle
(C.I.N 13025)
Indicateur mixte 4,5 selon
Mortimer
Vert de bromocrsol

CHIMIE INDUSTRIELLE

2,0
bleu-vert
2,6
vert
3,0
vert
fluorescent
3,6
rouge
2,3
bleu
2,7
violet
1,0
jaune
1,8
jaune
2,6
bleu-violet
2,8
jaune

Solution indicatrice (prparation)


0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'thanol (20 %)
0,1 g dans 100 ml d'thanol (70 %)
dissoudre 0,1 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 1,05
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
0,1 g dans 100 ml d'thanol (70 %)
dissoudre 0,04 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 1,05
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
dissoudre 0,04 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,86
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
dissoudre 0,01 g dans 100 ml d'thanol (50 %) ou 0,04 g dans 0,98
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
0,1 g dans 100 ml d'thanol 96 %
0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'thanol (60 %)
0,1 g dans 100 ml d'thanol (70 %)
0,1 - 0,5 g dans 100 ml d'thanol (90 %)
dissoudre 0,1 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,69
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
dissoudre 0,1 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,6 ml
de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu' 100
ml
0,2 g dans 100 ml d'eau
0,04 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 100 ml
d'eau
250 ml
dissoudre 0,1 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,58
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml

07/01/2005

1re Edition

Tome TP

Domaine de virage
Changement de couleur

Indicateur

4,0
incolore
4,3
jaune

Dinitro-2,5-phnol
Acide alizarine-sulfonique sel
sodique
(C.I.N 58005)
Rouge de mthyle
(C.I.N 13020)
Indicateur mixte 5
Rouge de chlorophnol

4,4
rouge
4,4
rouge-violet
4,8
jaune
5,0
rouge
5,2
jaune

Tournesol
(C.I.N 1242)
Pourpre de bromocrsol
Rouge de bromophnol

13

Dr. Gilles OLIVE

5,2
orang-jaune

Nitro-4-phnol
Bleu de bromoxylnol
Alizarine
(C.I.N 58000)
Bleu de bromothymol
Rouge de phnol
Nitro-3-phnol
Rouge neutre
(C.I.N 50040)
Ttrabromo-4,5,6,7-phtaline
Rouge de crsol

5,4
incolore
5,7
jaune
5,8
jaune
6,0
jaune

6,4jaune

6,6
incolore
6,8
bleurouge
7,0
incolore
7,0
orang

5,8
jaune
6,3
violet
6,2
jaune-orang
5,8
vert
6,4
pourpre
8,0
bleu
6,8
pourpre
6,8
pourpre
7,5
jaune
7,5
bleu
7,2
rouge
7,6
bleu

8,0
pourpre
8,8
pourpre

Bleu de thymol

8,0
jaune

9,6
bleu

Bleu de p-xylnol

8,0
jaune

9,6
bleu

8,2
incolore
9,3
incolore
9,4
violet
10,0
jaune-clair

9,8
rouge-violet
10,5
bleu
14,0
rose
12,1
jaune-bruntre

Pourpre de m-crsol

Phnolphtaline
Thymolphtaline
Bleu alcalin
(C.I.N 42765)
Jaune d'alizarine GG
(C.I.N 14025)

CHIMIE INDUSTRIELLE

0,05 - 0,1 g dans 100 ml d'thanol (70 %)


0,1 g dans 100 ml d'thanol (50 %) ou 0,1 g dans 100 ml d'eau
0,1 g dans 100 ml d'thanol (96 %)
250 ml
dissoudre 0,1 g dons 100 ml d'thanol (20 %) ou 0,04 g dans 0,94
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
4 g dans 100 ml d'eau
dissoudre 0,1 g dons 100 ml d'thanol (20 %) ou 0,4 g dans 0,74 ml
de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu' 100
ml
dissoudre 0,1 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,94
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
0,2 g dans 100 ml d'thanol (96 %) ou 0,08 g dans 100 ml d'eau
0,1 g dans 100 ml d'thanol (96 %)
0,5 g dans 100 ml d'thanol (96 %)

dissoudre 0,1 g dans 100 ml d'thanol (20 /o) ou 0,04 g dans 0,64
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
8,2
dissoudre 0,1 g dans 100 ml d'thanol (20 /o) ou 0,04 g dans 1,13
rouge-violet ml de lessive de soude 0,1 mol/l et complter avec de l'eau
jusqu'100 ml
8,6
0,3 g dans 100 ml d'thanol (96 %) ou 0,08 g dans100 ml d'eau
jaune-orang
8,0
orang-jaune 0,1 g dans 100 ml d'thanol (70 %)

7,1
bruntre
7,4
jaune

Napthne-1-phtaline

Solution indicatrice (prparation)

8,3
bleu-vert
9,0
pourpre

0,1 g dans 100 ml d'thanol (96 %)


dissoudre 0,1 g dans 100 ml d'thanol (50 %) ou 0,04 g dans 1,05
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
0,1 g dans 100 ml d'thanol (96 %)
dissoudre 0,04 g dans100 ml d'thanol (20 %) ou 0,04 g dans 1,05
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
dissoudre 0,04 g dans100 ml d'thanol (20 %) ou 0,04 g dans 0,86
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
dissoudre 0,04 g dans 100 ml d'thanol (20 %) ou 0,04 g dans 0,86
ml de lessive de soude 0,1 mol/l et complter avec de l'eau jusqu'
100 ml
0,1 g dans 100 ml d'thanol (96 %)
0,1 g dans 100 ml d'thanol (50 %)
0,1 g dans 100 ml d'thanol (96 %)
0,1 g dans 100 ml d'eau

07/01/2005

1re Edition

Tome TP

Domaine de virage
Changement de couleur

Indicateur

10,1
rouge
12,0
jaune
11,5
bleu
11,6
orange

Atizarine
(C.I.N 58000)
Jaune titane
(C.I.N 19540)
Carmin d'indigo
(C.I.N 73015)
Bleu d'epsilon

0.4.2.

14

Dr. Gilles OLIVE


-

12,1
pourpre
13,0
rouge
13,0
jaune
13,0
violet

Solution indicatrice (prparation)


0,5 g dans 100 ml d'thanol (96 %)
0,1 g dans 100 ml d'thanol (20 %)
0,25 g dans 100 ml d'thanol (50 %) ou 1 g dans 100 ml d'eau
0,1 g dans 100 ml d'eau

Indicateurs d'Oxydo-rduction3

Indicateur

Potentiel
d'oxydorduction Valeur
(V)
rH

E0 (pH=0) E0 (pH=7)
(20 C)
(30 C)
Acide diphnylaminesulfonique-4 sel de
baryum
Acide N-phnylanthranilique
Bipyridine-2,2'
(fer[II]complexe)
Bleu de crsyl brillant
(C.I.N 51010)
Bleu de mthylne
(C.I.N 52015)
Bleu de Nil, sulfate
(C.I.N 51180)
Bleu de variamine sel B
(C.I.N 37255)

Cacothline

Carmin d'indigo
(Indigosulfonate, sel
disodique)
(C.I.N 73015)
Dichloro-2,6-phnolindophnol sel sodique
(dihydrat)
Dimthyl-3,3'-naphtidine
(Diamino-4,4'-dimthyl3,3'-binaphthaline-1,1')

+ 0,84 dans l'acide


sulfurique 1 mol/l

28,5

Changement de
couleur
Forme
oxyde

Forme
rduite

rougeviolet

incolore

Solution indicatrice
(prparation)

0,2 g dans 100 ml d'eau


Dissoudre 0,1 g dans 5 ml de lessive
de soude 0,1 mol/l et complter avec
de l'eau 100 ml ou dissoudre 0,107
g dans 20 ml de sodium carbonate en
solution (5 %) et complter avec de
l'eau 100 ml
0,695 g FeSO4 7H2O + 1,171 g de
bipyridine 2,2' dans 100 ml d'eau
0,5 g dans 100 ml d'eau ou d'thanol
(96 %)

+ 0,89

rougepourpre

incolore

+ 1,03

bleu ple

rouge

bleu

incolore

bleu

incolore

0,1 - 0,5 g dans 100 ml d'eau

+ 0,58

+ 0,05

+ 0,53
(30C)

+ 0,01

+ 0,41

-0,12

bleu-rouge

incolore

0,1 g dons 100 ml dans l'eau

+ 0,31

bleu-violet
(acidit)
jaune
(alcalinit)

incolore

1,0 g dans 100 ml d'eau ou de


sodium chlorure ou de sodium
sulfate anhydre, broy

+ 0,712

+ 0,525

14,5

18,1

jaune

rougeviolet
(incolore
irrversible
sature dans l'eau
si la
rduction
est trop
forte)

+ 0,29

-0,11

10

bleu

jauntre

0,05 g dans 100 ml d'eau

+ 0,67

+ 0,23

22

bleu

incolore

0,02 g dons 100 ml d'eau

rouge
pourpre

incolore

1,0 g dans 100 ml d'acide actique

+ 0,78

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

15

Dr. Gilles OLIVE


Potentiel
d'oxydorduction Valeur
(V)
rH

Indicateur

E0 (pH=0) E0 (pH=7)
(20 C)
(30 C)

Changement de
couleur
Forme
oxyde

Forme
rduite

N,N-Dimthylphnylnediomine 1,4dichlorure

+ 0,751

bleu-fonc

incolore

Diphnylamine

+ 0,76

bleu-violet

incolore

N,N'-Diphnyl-benzidine

+ 0,76 dans l'acide


sulfurique 1 mol/l

26 3,0

violet

incolore

40

bleu

orangrouge

Ferrone (phnantroline1,10 fer [II]-complexej


Noir amido 10 B
(C.I.N 20470)

+ 1,06

Solution indicatrice
(prparation)

0,2 g dans 100 ml d'eau


1,0 g dans 100 ml d'acide sulfurique
(96 %)
1,0 g dans 100 ml d'acide sulfurique
(96 %)

+ 0,57

+ 0,84

brunjauntre

bleu

0,2 g dans 100 ml d'eau

Phnanthroline 1,10

+ 1,14

+ 1,06

bleu-ple

rouge

0,695 g FeSO4 7H2O + 1,487 g


phnanthroline 1,10 dans 100 ml
d'eau

Rouge neutre
(C.I.N 50040)

+ 0,24

-0,29

incolore

0,05 g dans 100 ml d'thanol (96 %)

Safranine
(C.I.N 50240)

+ 0,24

-0,29

incolore

0,05 g dans 100 ml d'eau

Terpyridine-2,2':6',2''
[fer(II)complexe]

+ 1,25

Thionine
(C.I.N 52000)

+ 0,56

0.5.

+ 0,06

16

rouge
violet
bleu violet
(acidit)
brun
(alcalinit)
bleu-ple

rouge

0,232 g FeSO4 7H2O + 0,389 g de


terpyridine-2,2':6',2'' dons 100 ml
d'eau

violet

incolore

0,05 g dans 100 ml d'thanol (60 %)

Table densit-pourcentage de quelques bases et acides3

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
0.5.1.

16

Dr. Gilles OLIVE


Acide nitrique
MM HNO3 = 63,02 g.mol-1
Densit

% en poids de
HNO3

Densit

D 20
4

% en poids de
HNO3

Densit

D 20
4

D 20
4

% en poids de
HNO3

1,000
1,005
1,010
1,015
1,020
1,025
1,030
1,035
1,040
1,045
1,050
1,055
1,060
1,065
1,070
1,075
1,080
1,085
1,090
1,095
1,100
1,105
1,110
1,115
1,120
1,125
1,130
1,135
1,140
1,145
1,150
1,155
1,160
1,165
1,170
1,175
1,180
1,185
1,190
1,195
1,200
1,205
1,210
1,215
1,220
1,225
1,230
1,235
1,240
1,245
1,250
1,255

0,3333
1,255
2,164
3,073
3,982
4,883
5,784
6,661
7,530
8,398
9,259
10,12
10,97
11,81
12,65
13,48
14,31
15,13
15,95
16,76
17,58
18,39
19,19
20,00
20,79
21,59
22,38
23,16
23,94
24,71
25,48
26,24
27,00
27,76
28,51
29,25
30,00
30,74
31,47
32,21
32,94
33,68
34,41
35,16
35,93
36,70
37,48
38,25
39,02
39,80
40,58
41,36

1,260
1,265
1,270
1,275
1,280
1,285
1,290
1,295
1,300
1,305
1,310
1,315
1,320
1,325
1,330
1,335
1,340
1,345
1,350
1,355
1,360
1,365
1,370
1,375
1,380
1,385
1,390
1,395
1,400
1,405
1,410
1,415
1,420
1,425
1,430
1,435
1,440
1,445
1,450
1,455
1,460
1,465
1,470
1,475
1,480
1,485
1,490
1,495
1,500
1,501
1,502
1,503

42,14
42,92
43,70
44,48
45,27
46,06
46,85
47,63
48,42
49,21
50,00
50,85
51,71
52,56
53,41
54,27
55,13
56,04
56,95
57,87
58,78
59,69
60,67
61,69
62,70
63,72
64,74
65,84
66,97
68,10
69,23
70,39
71,63
72,86
74,09
75,35
76,71
78,07
79,43
80,88
82,39
83,91
85,50
87,29
89,07
91,13
93,49
95,46
96,73
96,98
97,23
97,49

1,504
1,505
1,506
1,507
1,508
1,509
1,510
1,511
1,512
1,513

97,74
97,99
98,25
98,50
98,76
99,01
99,26
99,52
99,77
100,00

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

17

Dr. Gilles OLIVE

0.5.2.

Acide sulfurique
MM H2SO4 = 98,08 g.mol-1

Densit

20
4

1,000
1,005
1,010
1,015
1,020
1,025
1,030
1,035
1,040
1,045
1,050
1,055
1,060
1,065
1,070
1,075
1,080
1,085
1,090
1,095
1,100
1,105
1,110
1,115
1,120
1,125
1,130
1,135
1 140
1,145
1,150
1,155
1,160
1,165
1,170
1,175
1,180
1,185
1 190
1,195
1,200
1,205
1,210
1,215
1,220
1,225
1,230
1,235
1,240
1,245
1,250
1,255

% en poids de
H2SO4

Densit

0,2609
0,9855
1,731
2,485
3,242
4,000
4,746
5,493
6,237
6,956
7,704
8,415
9,129
9,843
10,56
11,26
11,96
12,66
13,36
14,04
14,73
15,41
16,08
16,76
17,43
18,09
18,76
19,42
20,08
20,73
21,38
22,03
22,67
23,31
23,95
24,58
25,21
25,84
26,47
27,10
27,72
28,33
28,95
29,57
30,18
30,79
31,40
32,01
32,61
33,22
33,82
34,42

1,260
1,265
1,270
1,275
1,280
1,285
1,290
1,295
1,300
1,305
1,310
1,315
1,320
1,325
1,330
1,335
1,340
1,345
1,350
1,355
1,360
1,365
1,370
1,375
1,380
1,385
1,390
1,395
1,400
1,405
1,410
1,415
1,420
1,425
1,430
1,435
1,440
1,445
1,450
1,455
1,460
1,465
1,470
1,475
1,480
1,485
1,490
1,495
1,500
1,505
1,510
1,515

CHIMIE INDUSTRIELLE

20
4

% en poids de
H2SO4

Densit

35,01
35,60
36,19
36,78
37,36
37,95
38,53
39,10
39,68
40,25
40,82
41,39
41,95
42,51
43,07
43,62
44,17
44,72
45,26
45,80
46,33
46,86
47,39
47,92
48,45
48,97
49,48
49,99
50,50
51,01
51,52
52,02
52,51
53,01
53,50
54,00
54,49
54,97
55,45
55,93
56,41
56,89
57,36
57,84
58,31
58,78
59,24
59,70
60,17
60,62
61,08
61,54

1,520
1,525
1,530
1,535
1,540
1,545
1,550
1,555
1,560
1,565
1,570
1,575
1,580
1,585
1,590
1,595
1,600
1,605
1,610
1,615
1,620
1,625
1,630
1,635
1,640
1,645
1,650
1,655
1,660
1,665
1,670
1,675
1,680
1,685
1,690
1,695
1,700
1,705
1,710
1,715
1,720
1,725
1,730
1,735
1,740
1,745
1,750
1,755
1,760
1,765
1,770
1,775

07/01/2005

20
4

% en poids
de H2SO4

Densit

D 20
4

% en poids de
H2SO4

62,00
62,45
62,91
63,36
63,81
64,26
64,71
65,15
65,59
66,03
66,47
66,91
67,35
67,79
68,23
68,66
69,09
69,53
69,96
70,39
70,82
71,25
71,67
72,09
72,52
72,95
73,37
73,80
74,22
74,64
75,07
75,49
75,92
76,34
76,77
77,20
77,63
78,06
78,49
78,93
79,37
79,81
80,25
80,70
81,16
81,62
82,09
82,57
83,06
83,57
84,08
84,61

1,780
1,785
1,790
1,795
1,800
1,805
1,810
1,815
1,820
1,821
1,822
1,823
1,824
1,825
1,826
1,827
1,828
1,829
1,830
1,831
1,832
1,833

85,16
85,74
86,35
86,99
87,69
88,43
89,23
90,12
91,11
91,33
91,56
91,78
92,00
92,25
92,51
92,77
93,03
93,33
93,64
93,94
94,32
94,72

1re Edition

Tome TP
0.5.3.

18

Dr. Gilles OLIVE


Acide phosphorique
MM H3PO4 = 97,99 g.mol-1
Densit

0.5.4.

% en poids de
H3PO4

Densit

D 20
4

D 20
4

% en poids de
H3PO4

1,0038
1,0092
1,0146
1,0200
1,0255
1,0309
1,0365
1,0420
1,0476
1,0532
1,0590
1,0647
1,0705
1,0764
1,0824
1,0884
1,0946
1,1008
1,1071
1,1134
1,1199
1,1263
1,1329
1,1395

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

1,1462
1,1529
1,1597
1,1665
1,1735
1,1805
1,216
1,254
1,293
1,335
1,379
1,426
1,476
1,526
1,579
1,633
1,689
1,746
1,770
1,794
1,819
1,844
1,870

25
26
27
28
29
30
35
40
45
50
55
60
65
70
75
80
85
90
92
94
96
98
100

Acide chlorhydrique
MM HCl = 36,47 g.mol-1
Densit

20
4

% en poids de
HCl

Densit

0,3600
1,360
2,364
3,374
4,388
5,408
6,433
7,464
8,490
9,510
10,52
11,52
12,51
13,50

1,070
1,075
1,080
1,085
1,090
1,095
1,100
1,105
1,110
1,115
1,120
1,125
1,130
1,135

1,000
1,005
1,010
1,015
1,020
1,025
1,030
1,035
1,040
1,045
1,050
1,055
1,060
1,065

CHIMIE INDUSTRIELLE

20
4

% en poids de
HCl

Densit

D 20
4

% en poids de
HCl

14,495
15,485
16,47
17,45
18,43
19,41
20,39
21,36
22,33
23,29
24,25
25,22
26,20
27,18

1,140
1,145
1,150
1,155
1,160
1,165
1,170
1,175
1,180
1,185
1,190
1,195
1,198

28,18
29,17
30,14
31,14
32,14
33,16
34,18
35,20
36,23
37,27
38,32
39,37
40,00

07/01/2005

1re Edition

Tome TP

19

Dr. Gilles OLIVE

0.5.5.

Ammoniaque
MM NH3 = 17,03 g.mol-1
Densit

0.5.6.

% en poids de
NH3

Densit

D 20
4

D 20
4

% en poids de
NH3

0,998
0,996
0,994
0,992
0,990
0,988
0,986
0,984
0,982
0,980
0,978
0,976
0,974
0,972
0,970
0,968
0,966
0,964
0,962
0,960
0,958
0,956
0,954
0,952
0,950
0,948
0,946

0,0465
0,512
0,977
1,43
1,89
2,35
2,82
3,30
3,78
4,27
4,76
5,25
5,75
6,25
6,75
7,26
7,77
8,29
8,82
9,34
9,87
10,405
10,95
11,49
12,03
12,58
13,14

0,944
0,942
0,940
0,938
0,936
0,934
0,932
0,930
0,928
0,926
0,924
0,922
0,920
0,918
0,916
0,914
0.9T2
0,910
0,908
0,906
0,904
0,902
0,900
0,898
0,896
0,894
0,892

13,71
1429
14,88
15,47
16,06
16,65
17,24
17,85
18,45
19,06
19,67
20,27
20,88
21,50
22,125
22,75
23,39
24,03
24,68
25,33
26,00
26,67
27,33
28,00
28,67
29,33
30,00

Lessive de soude
MM NaOH = 40,01 g.mol-1
Densit

20
4

% en poids de
NaOH

Densit

0,159
1,045
1,94
2,84
3,745
4,655
5,56
6,47
7,38
8,28
9,19
10,10
11,01
11,92
12,83
13,73
14,64
15,54

1,180
1,190
1,200
1,210
1,220
1,230
1,240
1,250
1,260
1,270
1,280
1,290
1,300
1,310
1,320
1,330
1,340
1,350

1,000
1,010
1,020
1,030
1,040
1,050
1,060
1,070
1,080
1,090
1,100
1,110
1,120
1,130
1,140
1,150
1,160
1,170

CHIMIE INDUSTRIELLE

20
4

% en poids de
NaOH

Densit

D 20
4

% en poids de
NaOH

16.44
17,345
18,255
19,16
20.07
20,98
21,90
22,82
23,73
24,645
25,56
26,48
27,41
28,33
29,26
30,20
31,14
32,10

1.360
1,370
1,380
1,390
1,400
1,410
1,420
1,430
1,440
1,450
1,460
1,470
1,480
1,490
1,500
1,510
1,520
1,530

33,06
34,03
35,01
36,00
36,99
37,99
38,99
40,00
41,03
42,07
43,12
44,17
45,22
46,27
47,33
48,38
49,44
50,50

07/01/2005

1re Edition

Tome TP
0.5.7.

20

Dr. Gilles OLIVE


Lessive de potasse
MM KOH = 56,11 g.mol-1
Densit

20
4

% en poids de
KOH

Densit

0,197
1,295
2,38
3,48
4,58
5,66
6,74
7,82
8,89
9,96
11,03
12,08
13,14
14,19
15,22
16,26
17,29
18,32

1,180
1,190
1,200
1,210
1,220
1,230
1,240
1,250
1,260
1,270
1,280
1,290
1,300
1,310
1,320
1,330
1,340
1,350

1,000
1,010
1,020
1,030
1,040
1,050
1,060
1,070
1,080
1,090
1,100
1,110
1,120
1,130
1,140
1,150
1,160
1,170

0.5.8.

20
4

% en poids de
KOH

Densit

D 20
4

% en poids de
KOH

19,35
20,37
21,38
22,38
23,38
24,37
25,36
26,34
27,32
28,29
29,25
30,21
31,15
32,09
33,03
33,97
34,90
35,82

1,360
1,370
1,380
1,390
1,400
1,410
1,420
1,430
1,440
1,450
1,460
1,470
1,480
1,490
1,500
1,510
1,520
1,530

36,735
37,65
38,56
39,46
40,37
41,26
42,155
43,04
43,92
44,79
45,66
46,53
47,39
48,25
49,10
49,95
50,80
51,64

Concentrations usuelles de quelques acides et bases

Dsignation
Acide actique (cristallisable) DAB 7
Acide actique (cristallisable) 99-100 %
Acide actique dilu DAB 7
Acide bromhydrique
Acide chlorhydrique DAB 7
Acide chlorhydrique concentr (1,16)
Acide chlorhydrique concentr (1,18)
Acide chlorhydrique fumant
Acide fluorhydrique
Acide fluorhydrique
Acide formique
Acide iodhydrique
Acide nitrique DAB 7
Acide nitrique concentr
Acide nitrique fumant
Acide perchlorique
Acide perchlorique
Acide phosphorique DAB 7
Acide phosphorique concentr (1,71)
Acide phosphorique concentr (1,75)
Acide sulfurique concentr
Acide sulfurique dilu
Ammoniaque
Ammoniaque
Ammoniaque
Lessive de potasse
Lessive de potasse
Lessive de soude
*

20

% en poids

Densit D 4

Concentration (mol.l-1)*

96
99 - 100
30
40
25
32
36
37
48
40
98 - 100
57
25
65
100
70
60
25
85
89
95- 97
25
35
30
25
47
30
33

1,06
1,06
1,04
1,38
1,12
1,16
1,18
1,19
1,16
1,13
1,22
1,7
1,15
1,40
1,52
1,67
1,53
1,15
1,71
1,75
1,84
1,18
0,88
0,88
0,91
1,5
1,3
1,36

17
18
5
7
6
10
12
12,5
28
23
26
7,5
5
14
21
12
9
3
15
16
18
6
18
15,5
13,5
12,5
7
11

Valeurs arrondies

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

21

Tome TP
Dr. Gilles OLIVE
0.6.
Interprtation des rsultats par le calcul statistique

0.6.1.

Gnralit

Le calcul d'incertitude classique dans lequel on admet que toutes les erreurs se cumulent est trop
pessimiste. La mthode statistique permet de calculer la valeur de l'erreur avec une probabilit donne.
Le calcul statistique ne s'applique qu'a un ensemble de faits exprimentaux significatifs d'une
catgorie d'exprimentateurs.
Supposons qu'une solution doser ait un titre rel X. Une famille d'tudiants dose cette solution et
trouve les valeurs Xi soient X1, X2, X3 ..... Xn.
Avec quelle prcision va t-on connatre le titre de cette solution:
X X
Statistiquement, les rsultats se repartissent suivant une courbe de
Gauss qui est dfinie par 2 paramtres:
!

la moyenne arithmtique x des n rsultats individuels Xi


x
soit x = i
n
la variance v:
(x i x ) 2
soit v =
n 1
et l'cart type = v

Thoriquement il y a 68 % de chance pour que:


x < xi < x +
95 % de chances pour que:
x 2 < x i < x + 2
et 99,7 % de chances pour que
x 3 < x i < x + 3
Le problme est de trouver un compromis entre la certitude d'avoir un bon rsultat et la prcision avec
laquelle on va donner ce rsultat.
En gnral, on choisit un intervalle de confiance de 95 % en admettant 5 % de chances de se tromper.
La prcision est une grandeur caractristique de la dispersion des rsultats autour de la moyenne.
On calcule:
x
! la moyenne x = i
n
(x i x ) 2
n 1

l'cart-type =

l'cart-type moyen ou erreur moyenne m =

Dans ces conditions, un rsultat isol Xi a 95 % de chances de se trouver dans les limites suivantes:
x .t
(les valeurs de Xi qui sortent de cet intervalle sont liminer).
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

22

Dr. Gilles OLIVE

La valeur moyenne x a 95 % de chances de se trouver dans les limites suivantes:


x m .t
Remarques:
! Le coefficient t est fourni par la table de Fischer (intervalle de confiance de 95 % : P = 0,05)
! L'cart-type affecte un rsultat isol, il caractrise la prcision sur ce rsultat isol
! L'cart-type moyen affecte une moyenne de rsultats, il caractrise la prcision d'une
mthode analytique.

Table 6 - Table de t d'aprs R. A. Fischer


n-1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
40
60
120

P 0,9
0,158
0,142
0,137
0,134
0,132
0,131
0,130
0,130
0,129
0,129
0,129
0,128
0,128
0,128
0,128
0,128
0,128
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,127
0,126
0,126
0,126
0,126

0,8
0,325
0,289
0,277
0,271
0,267
0,265
0,263
0,262
0,261
0,260
0,260
0,259
0,259
0,258
0,258
0,258
0,257
0,257
0,257
0,257
0,257
0,256
0,256
0,256
0,256
0,256
0,256
0,256
0,256
0,256
0,255
0,254
0,254
0,253

0,7
0,510
0,445
0,424
0,414
0,408
0,404
0,402
0,399
0,398
0,397
0,396
0,395
0,394
0,393
0,393
0,392
0,392
0,392
0,391
0,391
0,391
0,390
0,390
0,390
0,390
0,390
0,389
0,389
0,389
0,389
0,388
0,387
0,386
0,385

CHIMIE INDUSTRIELLE

0,6
0,727
0,617
0,584
0,569
0,559
0,553
0,549
0,546
0,543
0,542
0,540
0,539
0,538
0,537
0,536
0,535
0,534
0,534
0,533
0,533
0,532
0,532
0,532
0,531
0,531
0,531
0,531
0,530
0,530
0,530
0,529
0,527
0,526
0,524

0,5
1,000
0,816
0,765
0,741
0,727
0,718
0,711
0,706
0,703
0,700
0,697
0,695
0,694
0,692
0,691
0,690
0,689
0,688
0,688
0,687
0,686
0,686
0,685
0,685
0,684
0,684
0,684
0,683
0,683
0,683
0,681
0,679
0,677
0,674

0,4
1,376
1,061
0,978
0,941
0,920
0,906
0,896
0,889
0,883
0,879
0,876
0,873
0,870
0,868
0,866
0,865
0,863
0,862
0,861
0,860
0,859
0,858
0,858
0,857
0,856
0,856
0,855
0,855
0,854
0,854
0,851
0,848
0,845
0,842

0,3
1,963
1,386
1,250
1,190
1,156
1,134
1,119
1,108
1,100
1,093
1,088
1,083
1,079
1,076
1,074
1,071
1,069
1,067
1,066
1,064
1,063
1,061
1,060
1,059
1,058
1,058
1,057
1,056
1,055
1,055
1,050
1,046
1,041
1,036

07/01/2005

0,2
3,078
1,886
1,638
1,533
1,476
1,440
1,415
1,397
1,383
1,372
1,363
1,356
1,350
1,345
1,341
1,337
1,333
1,330
1,328
1,323
1,325
1,321
1,319
1,318
1,316
1,315
1,314
1,313
1,311
1,310
1,303
1,296
1,289
1,282

0,1
6,314
2,920
2,353
2,132
2,015
1,943
1,895
1,860
1,833
1,812
1,796
1,782
1,771
1,761
1,753
1,746
1,740
1,734
1,729
1,725
1,721
1,717
1,714
1,711
1,708
1,706
1,703
1,701
1,699
1,697
1,684
1,671
1,658
1,645

0,05
12,706
4,303
3,182
2,776
2,571
2,447
2,365
2,306
2,262
2,228
2,201
2,179
2,160
2,145
2,131
2,120
2,110
2,101
2,093
2,086
2,080
2,074
2,069
2,064
2,060
2,056
2,052
2,048
2,045
2,042
2,021
2,000
1,980
1,960

0,02
31,821
6,965
4,541
3,747
3,365
3,143
2,998
2,896
2,821
2,764
2,718
2,681
2,650
2,624
2,602
2,583
2,567
2,552
2,539
2,528
2,518
2,508
2,500
2,492
2,485
2,479
2,473
2,467
2,462
2,457
2,423
2,390
2,358
2,326

0,01
63,657
9,925
5,841
4,604
4,032
3,707
3,499
3,355
3,250
3,169
3,106
3,055
3,012
2,977
2,947
2,921
2,898
2,878
2,861
2,845
2,831
2,819
2,807
2,797
2,787
2,779
2,771
2,763
2,756
2,750
2,704
2,660
2,617
2,576

0,001
636,619
31,598
12,941
8,610
6,859
5,959
5,405
5,041
4,781
4,587
4,437
4,318
4,221
4,140
4,073
4,015
3,965
3,922
3,883
3,850
3,819
3,792
3,767
3,745
3,725
3,707
3,690
3,674
3,659
3,646
3,551
3,460
3,373
3,291

1re Edition

Tome TP
0.6.2.

23

Dr. Gilles OLIVE


Exemple

Dosage d'une solution de soude environ 0,2 M.


12 essais ont t raliss numrots de 1 12. xi reprsente ici le titre en molarit de la solution de
soude.
N de l'essai

xi(M)

104 xi

1
2
3
4
5
6
7
8
9
10
11
12

0,2210
0,2195
0.2067
0,2198
0,2180
0,2210
0,2205
0,2195
0,2220
0,2205
0,2202
0,2185

2210
2195
2067
2198
2180
2210
2205
2195
2220
2205
2202
2185

4
10 (x i - x )
+ 20,67
+ 5,67
- 122,33
+ 8,67
- 9,33
+ 20,67
+ 15,67
+ 5,67
+ 30,67
+ 15,67
+ 12,67
- 4,33

8
2
10 (x i - x )
427,25
32,15
14964,63
75,17
87,05
427,25
245,55
32,15
940,65
245,55
160,53
18,75

xi = 2,6272
x = 0,218933
10 4 x = 2189,33
(x i x ) 2 = 17656,68 10 -8
n - 1 = 12 -1 = 11
(x i - x ) 2
= 0,004
n -1
P = 0,05 n-1 = 11 t = 2,201
0,219 - (0,004 x 2,201) < xi < 0,219 + (0,004 x 2,201)
=

Un rsultat quelconque a 95 % de chances de se trouver dans les limites suivantes:


0,211 < xi < 0,227 M.
Tout rsultat se trouvant en dehors de ces limites est considr comme aberrant et doit tre limin. Le
rsultat N 3 est limin.
m =

0,004
=
= 0,001
n
12

0,219 - (0,001 x 2,201) < x < 0,219 + (0.001 x 2,201)


La concentration molaire de la solution de soude est la suivante:
(0,219 0,002) M

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
0.6.3.

Programmes Informatique en BASIC

0.6.3.1.
120
130
140
150
160
170
180
190
200
210
220
230
240
245
250
260
270
280
290
300
420
430
440
450
460
470
480
490
500
510
520
530
540
550
560
570
580
590
600
610
620
630
640
650
660
670
680
690
790
800
810
820
830
840
850

24

Dr. Gilles OLIVE

Version PET CBM

REM ANALYSE CHIMIQUE-INTERPRETATION


DES RESULTATS
REM STATISTIQUE
REM
DEF FNA(V)=INT(V*104+.5)/104
PRINT ""
INPUT "RESULTATS SUR ECRAN=3, IMPRIMANTE=4";J
OPEN(J),(J)
PRINT ""
INPUT"NOMBRE DE VALEURS EXPERIMENTALES";N
PRINT"CE NOMBRE DOIT ETRE INFERIEUR A 50"
DIM X(N), T(N)
FOR I=2 TO N
READ T(I)
DATA 12.706,4.303,3.182,2.776
DATA 2.571,2.447,2.365,2.306,2.262,2.228,2.201,2.179,2.16,2.145,2.131,2.12
DATA 2.11,2.101,2.093,2.086,2.08,2.074,2.069,2.064,2.06,2.056,2.052,2.048
DATA 2.045,2.042,2.042,2.042,2.042,2.042,2.042,2.042,2.042,2.042,2.042
DATA 2.021,2.021,2.021,2.021,2.021,2.021,2.021,2.021,2.021,2.021
NEXT I
RESTORE
S=0 :M=0 :SI=0:V=0:XI=0:XS=0
E=0 :S1=0 :SM=0 :ERA=0 :ER=0
FOR I=1 TO N
PRINT "VALEUR EXP NU";I
INPUT X(I)
S=S+X(I)
NEXT I
PRINT "SOMME DES VALEURS EXP.=";S
M=S/N
W=FNA(M)
FOR I=1 TO N
E=X(I)-M:S1=S1+E*E
NEXT I
PRINT "SOMME DES CARRES=";S1
V=S1/(N-1):SI=SQR(V)
PRINT "MOYENNE DES MESURES=";W
PRINT "VARIANCE=";V
PRINT "ECART TYPE =";SI
SM=SI:SQR(N)
PRINT "ECART TYPE MOYEN=";SM
ERA=SM*T(N)
PRINT "ERREUR ABSOLUE=";ERA
R=FNA(ERA)
E$=" +OU- "
XI=M-(T(N)*SI):XS=M+(T(N)*SI)
V=FNA(XI)
Z=FNA(XS)
PRINT
K=0
FOR I=1 TO N
IF X(I)<=XI OR X(I)=> THEN 850
K=K+1
X(K)=X(I)
GO TO860
PRINT#(J),"VAL. ABER.=";X(I)

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

25

Dr. Gilles OLIVE

860 NEXT I
870 IF K=N THEN : PRINT"IL Y A DES VALEURS ABERRANTES"
880 PRINT:PRINT:PRINT
900 INPUT"VOULEZ-VOUS ELIMINER LES VALEURS ABERRANTES OUI/NON?";A$
910 IF A$="OUI"THEN 930
920 IF A$="NON"THEN 990
930 PRINT" "
940 PRINT"SUPPRIMEZ LES VALEURS ABERANTES ET RECOMMENCEZ" :GO TO 950
950 N=K:GO TO 230
990 PRINT#(J),,CHR$(1)CHR$(254)"CALCUL STATISTIQUE"
1000 PRINT#(J),,"
(INTERVALLE DE CONFIANCE DE 95%):PRINT#(J)
1010 PRINT#(J),"NOMBRE DE VALEURS EXPERIMENTALES:";N
1020 FOR I=1 TO K
1030 PRINT#(J),I
,X(I)
1040 NEXT I
1050 PRINT#(J),"MOYENNE DES MESURES=";W
1060 PRINT#(J),"ECART TYPE=";SI
1070 PRINT#(J),"ECART-TYPE MOYEN=";SM
1080 PRINT#(J),,"****************************************"
1090 PRINT#(J),,"LES VALEURS EXTREMES SONT:"
1100 PRINT#(J)
1110 PRINT#(J),,Y,,Z
1120 PRINT#(J),,"****************************************"
1130 PPINT#(J),,"LES RESULTATS SONT:"
1140 PRINT#(J)
1150 PRINT#(J)
1160 PRINT#(J),,"****************************************"

0.6.3.2.

Version Quick Basic 4.5

Ce morceau fait en fait partie dun programme plus vaste du nom de Stradivarius et a t dvelopp en
collaboration avec la socit BP Chemicals.
ON ERROR GOTO 9500
DIM Xpts(500, 2): DIM a(13): DIM r(7, 8): DIM t(8):
Pts! = 0: Nbr% = 0
5 CLS
PRINT
PRINT "Stradivarius V 1.6 - Calculs annexes pour etude
de Catalyseurs"
PRINT "Copyright G. OLIVE et BP Chemicals SNC 1993"
PRINT
50 PRINT
PRINT "99 - Menu 2-Calculs peu frequents"
PRINT
PRINT "0 - Sortir de Stradivarius"
PRINT
INPUT "Choix>"; choix
IF choix = 0 THEN END
IF choix = 99 THEN 100
IF choix < 1 OR choix > 6 THEN PRINT CHR$(7): GOTO 50
CLS
GOTO 5
100 CLS
PRINT
PRINT "Stradivarius V 1.6 - Menu 2 - Calculs peu
frequents"
PRINT "Copyright G. OLIVE et BP Chemicals SNC 1993"
PRINT
55 PRINT
PRINT "6 - Entree une Variable"
PRINT "7 - Entree deux Variables"
PRINT "8 - Statistique a une variable"
PRINT "9 - Statistique a deux variables lineaire"
PRINT
"10
Statistique
a
deux
variables
logarithmique"
PRINT
"11
Statistique
a
deux
variables
exponentielle"
PRINT "12 - Statistique a deux variables puissance"
PRINT "13 - Estimation de Y"

CHIMIE INDUSTRIELLE

PRINT "14 - Estimation de X"


PRINT "15 - Regression polynomiale"
PRINT
PRINT "0 - Retour menu principal de Stradivarius"
PRINT
INPUT "Choix>"; choix
IF choix = 0 THEN GOTO 5
IF choix < 6 OR choix > 15 THEN PRINT CHR$(7): GOTO 55
CLS
ON choix GOSUB 6005, 7005, 8005, 9005, 1115, 1025,
1035, 1045, 1065, 1075
GOTO 100
6005 Nbr% = 0
PRINT "Stat a 1 Variable - Attention Maximun 500"
DO
Nbr% = Nbr% + 1
PRINT "Donnez x"; Nbr%; : INPUT a$
IF a$ = "" THEN EXIT DO
IF LEFT$(a$, 1) = "#" THEN
enleve = VAL(RIGHT$(a$, LEN(a$) - 1))
FOR n = enleve TO Nbr%
Xpts(n, 1) = Xpts(n + 1, 1)
NEXT n
Nbr% = Nbr% - 2
ELSE
Xpts(Nbr%, 1) = VAL(a$)
Xpts(Nbr%, 2) = 0
Pts! = -1
END IF
LOOP
Nbr% = Nbr% - 1
FOR n = 1 TO Nbr%
PRINT "x"; n; ":"; Xpts(n, 1),
NEXT n
INPUT "Taper ENTER"; a$
RETURN

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

7005 Nbr% = 0
PRINT "Stat a deux variables - Attention Maximun 500"
DO
Nbr% = Nbr% + 1
PRINT "Donnez x"; Nbr%; : INPUT a$
IF a$ = "" THEN EXIT DO
IF LEFT$(a$, 1) = "#" THEN
enleve = VAL(RIGHT$(a$, LEN(a$) - 1))
FOR n = enleve TO Nbr%
Xpts(n, 1) = Xpts(n + 1, 1)
NEXT n
Nbr% = Nbr% - 2
ELSE
PRINT "Donnez y"; Nbr%; : INPUT b$
IF b$ = "" THEN EXIT DO
Xpts(Nbr%, 1) = VAL(a$)
Xpts(Nbr%, 2) = VAL(b$)
Pts! = -1
END IF
LOOP
Nbr% = Nbr% - 1
FOR n = 1 TO Nbr%
PRINT "x"; n; ":"; Xpts(n, 1), "y"; n; ":"; Xpts(n, 2)
NEXT n
INPUT "Taper ENTER"; a$
RETURN
'
--------------------------------Stat
variable -----------------------8005 Cnt = 0: Sumx = 0: Sumx2 = 0: sum1x = 0
IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF

une

Cnt = Nbr%
Negatif = 0: Zero = 0
FOR n = 1 TO Cnt
IF Xpts(n, 1) = 0 THEN
Zero = -1
END IF
IF Xpts(n, 1) <= 0 THEN
Negatif = -1
END IF
NEXT n
PRINT "
< CLASSEMENT EN COURS >"
DO
C = 0
FOR I = 1 TO Cnt - 1
IF Xpts(I, 1) > Xpts(I + 1, 1) THEN
SWAP Xpts(I, 1), Xpts(I + 1, 1)
SWAP Xpts(I, 2), Xpts(I + 1, 2)
C = 1
END IF
NEXT I
IF C <> 1 THEN EXIT DO
LOOP
Prodx = 1
FOR n = 1 TO Cnt
Sumx = Sumx + Xpts(n, 1)
Sumx2 = Sumx2 + Xpts(n, 1) ^ 2
IF Negatif = 0 THEN
Prodx = Prodx * Xpts(n, 1)
END IF
IF Zero = 0 THEN
sum1x = sum1x + (1 / Xpts(n, 1))
END IF
NEXT n
m = Xpts((Cnt + 1) / 2, 1)
IF Cnt / 2 = INT(Cnt / 2) THEN
m = .5 * (Xpts(Cnt / 2, 1) + Xpts(1 + Cnt / 2, 1))
END IF
CLS
PRINT "Statistique a une variable"
PRINT
PRINT "Nombre de donnees : "; Cnt
PRINT "Somme des donnees : "; Sumx
PRINT "Somme des carrees des donnees : "; Sumx2
PRINT "------------------------------------------------------------------------------"
Xm = Sumx / Cnt
PRINT TAB(30); "Moyenne arithmetique : "; Xm
IF Negatif = 0 THEN
PRINT TAB(30); "Moyenne geometrique : "; Prodx ^
(1 / Cnt)
END IF
IF Zero = 0 THEN
PRINT TAB(30); "Moyenne harmonique
: "; Cnt /
sum1x

CHIMIE INDUSTRIELLE

26

END IF
PRINT TAB(30); "Mediane : "; m
PRINT "------------------------------------------------------------------------------"
Sn = SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt ^ 2))
PRINT "Variance de la population de donnees / n
:
"; Sn ^ 2
PRINT "Ecart type sur une population de donnees / n
: "; Sn
Sn1 = SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt * (Cnt
- 1)))
PRINT "Variance de l'echantillon de donnees / n-1 :
"; Sn1 ^ 2
PRINT "Ecart type sur un echantillon de donnees / n1 : "; Sn1
PRINT "Coefficient de variation / n
: "; 100 * Sn
/ Xm
PRINT "Coefficient de variation / n-1 : "; 100 * Sn1
/ Xm
Sm = Sn / SQR(Cnt)
Sm1 = Sn1 / SQR(Cnt)
PRINT "Ecart moyen ou erreur type / n
: "; Sm
PRINT "Ecart moyen ou erreur type / n-1 : "; Sm1
PRINT "------------------------------------------------------------------------------"
INPUT "Tapez ENTER"; a$
CLS
n = Cnt - 1
IF n >= 120 THEN
t = 1.98
END IF
IF n >= 60 AND n < 120 THEN
t = 2
END IF
IF n >= 40 AND n < 60 THEN
t = 2.021
END IF
IF n >= 30 AND n < 40 THEN
t = 2.042
END IF
IF n < 30 THEN
RESTORE 1111
FOR I = 1 TO n
READ t
NEXT I
END IF
PRINT "Coefficient t de Student-Fisher pour P=95% :
", t
PRINT "Erreur relative / n
: "; 100 * Sm * t / Xm;
"%"
PRINT "Erreur relative / n-1 : "; 100 * Sm1 * t /
Xm; "%"
PRINT "Intervalles de confiance:"
PRINT "
-Pour une valeur / n
: "; Sn * t; "
("; Xm - Sn * t; "-"; Xm + Sn * t; ")"
PRINT "
-Pour une valeur / n-1 : "; Sn1 * t; "
("; Xm - Sn1 * t; "-"; Xm + Sn1 * t; ")"
PRINT "
-Pour la moyenne / n
: "; Sm * t; "
("; Xm - Sm * t; "-"; Xm + Sm * t; ")"
PRINT "
-Pour la moyenne / n-1 : "; Sm1 * t; "
("; Xm - Sm1 * t; "-"; Xm + Sm1 * t; ")"
INPUT "Tapez ENTER"; a$
RETURN
1111
DATA
12.706,4.303,3.182,2.776,2.571,2.447,2.365,2.306,2.262
,2.228
DATA
2.201,2.179,2.160,2.145,2.131,2.120,2.110,2.101,2.093,
2.086
DATA
2.080,2.074,2.069,2.064,2.060,2.056,2.052,2.048,2.045,
2.042
' --------------------- stat 2 var lineaire ----------------------------------9005 IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF
Sumx = 0: Sumx2 = 0: Sumy = 0: Sumy2 = 0: Sumxy = 0
CLS
Cnt = Nbr%
FOR n = 1 TO Cnt
Sumx = Sumx + Xpts(n, 1)
Sumx2 = Sumx2 + Xpts(n, 1) ^ 2
Sumy = Sumy + Xpts(n, 2)
Sumy2 = Sumy2 + Xpts(n, 2) ^ 2
Sumxy = Sumxy + Xpts(n, 1) * Xpts(n, 2)
NEXT n

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

PRINT "---------------------- Analyse de regression


lineaire Y=a+bX ------------------"
PRINT "Nombre de donnees : "; Cnt
PRINT "Somme des donnees X : "; Sumx
PRINT "Somme des donnees Y : "; Sumy
PRINT "Somme des carrees des donnees X : "; Sumx2
PRINT "Somme des carrees des donnees Y : "; Sumy2
PRINT "Somme des produits de donnees X et Y : ";
Sumxy
PRINT "------------------------------------------------------------------------------"
PRINT TAB(30); "Moyenne X : "; Sumx / Cnt
PRINT TAB(30); "Moyenne Y : "; Sumy / Cnt
PRINT "------------------------------------------------------------------------------"
PRINT "Ecart type sur une population de donnees X/ n
: "; SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur une population de donnees Y/ n
: "; SQR(((Cnt * Sumy2) - (Sumy ^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur un echantillon de donnees X/
n-1 : "; SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt *
(Cnt - 1)))
PRINT "Ecart type sur un echantillon de donnees Y/
n-1 : "; SQR(((Cnt * Sumy2) - (Sumy ^ 2)) / (Cnt *
(Cnt - 1)))
PRINT "------------------------------------------------------------------------------"
b = (Cnt * Sumxy - Sumx * Sumy) / (Cnt * Sumx2 Sumx ^ 2): a = (Sumy - b * Sumx) / Cnt
PRINT "Terme constant de la regression lineaire a :
"; a
PRINT "Coefficient de regression lineaire b : "; b
PRINT "Coefficient de corelation r : "; (Cnt * Sumxy
- Sumx * Sumy) / SQR((Cnt * Sumx2 - Sumx ^ 2) * (Cnt *
Sumy2 - Sumy ^ 2))
INPUT "Tapez ENTER"; a$
RETURN
' ---------------------- Stat a 2 var loga ----------------------------------1115 IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF
Sumlnx = 0: Sumlnx2 = 0: Sumy = 0: Sumy2 = 0:
Sumlnxy = 0
CLS
Cnt = Nbr%
FOR n = 1 TO Cnt
Sumlnx = Sumlnx + LOG(Xpts(n, 1))
Sumlnx2 = Sumlnx2 + LOG(Xpts(n, 1)) ^ 2
Sumy = Sumy + Xpts(n, 2)
Sumy2 = Sumy2 + Xpts(n, 2) ^ 2
Sumlnxy = Sumlnxy + LOG(Xpts(n, 1)) * Xpts(n, 2)
NEXT n
PRINT "------------------ Analyse de regression
logarithmique Y=a+b*ln X -------------"
PRINT "Nombre de donnees : "; Cnt
PRINT "Somme des valeurs logarithmiques des donnees
X : "; Sumlnx
PRINT "Somme des donnees Y : "; Sumy
PRINT "Somme des carrees des valeurs logarithmiques
des donnees X : "; Sumlnx2
PRINT "Somme des carrees des donnees Y : "; Sumy2
PRINT "Somme des produits des valeurs logarithmiques
des X et des Y : "; Sumlnxy
PRINT "------------------------------------------------------------------------------"
PRINT TAB(30); "Moyenne logarithmique X : "; Sumlnx
/ Cnt
PRINT TAB(30); "Moyenne Y : "; Sumy / Cnt
PRINT "------------------------------------------------------------------------------"
PRINT "Ecart type sur une population logarithmique
de donnees X/ n
: "; SQR(((Cnt * Sumlnx2) - (Sumlnx
^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur une population de donnees Y/ n
: "; SQR(((Cnt * Sumy2) - (Sumy ^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur un echantillon logarithmique
de donnees X/ n-1 : "; SQR(((Cnt * Sumlnx2) - (Sumlnx
^ 2)) / (Cnt * (Cnt - 1)))
PRINT "Ecart type sur un echantillon de donnees Y/
n-1 : "; SQR(((Cnt * Sumy2) - (Sumy ^ 2)) / (Cnt *
(Cnt - 1)))
PRINT "------------------------------------------------------------------------------"
b = (Cnt * Sumlnxy - Sumlnx * Sumy) / (Cnt * Sumlnx2
- Sumlnx ^ 2): a = (Sumy - b * Sumlnx) / Cnt
PRINT "Terme constant de la regression a : "; a
PRINT "Coefficient de regression b : "; b

CHIMIE INDUSTRIELLE

27

PRINT "Coefficient de corelation r : "; (Cnt *


Sumlnxy - Sumlnx * Sumy) / SQR((Cnt * Sumlnx2 - Sumlnx
^ 2) * (Cnt * Sumy2 - Sumy ^ 2))
INPUT "Tapez ENTER"; a$
RETURN
' --------------------Stat a 2 var exp --------------------------------------1025 IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF
Sumx = 0: Sumx2 = 0: Sumlny = 0: Sumlny2 = 0:
Sumxlny = 0
CLS
Cnt = Nbr%
FOR n = 1 TO Cnt
Sumx = Sumx + Xpts(n, 1)
Sumx2 = Sumx2 + Xpts(n, 1) ^ 2
Sumlny = Sumlny + LOG(Xpts(n, 2))
Sumlny2 = Sumlny2 + LOG(Xpts(n, 2)) ^ 2
Sumxlny = Sumxlny + Xpts(n, 1) * LOG(Xpts(n, 2))
NEXT n
PRINT "-------------------- Analyse de regression
exponetielle Y=ab^X ----------------"
PRINT "Nombre de donnees : "; Cnt
PRINT "Somme des donnees X : "; Sumx
PRINT "Somme des valeurs logarithmiques des donnees
Y : "; Sumlny
PRINT "Somme des carrees des donnees X : "; Sumx2
PRINT "Somme des carrees des valeurs logarithmiques
des donnees Y : "; Sumlny2
PRINT "Somme des produits des X et des valeurs
logarithmiques des Y : "; Sumxlny
PRINT "------------------------------------------------------------------------------"
PRINT TAB(30); "Moyenne X : "; Sumx / Cnt
PRINT TAB(30); "Moyenne logarithmique Y : "; Sumlny
/ Cnt
PRINT "------------------------------------------------------------------------------"
PRINT "Ecart type sur une population de donnees X/ n
: "; SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur une population logarithmique
de donnees Y/ n
: "; SQR(((Cnt * Sumlny2) - (Sumlny
^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur un echantillon de donnees X/
n-1 : "; SQR(((Cnt * Sumx2) - (Sumx ^ 2)) / (Cnt *
(Cnt - 1)))
PRINT "Ecart type sur un echantillon logarithmique
de donnees Y/ n-1 : "; SQR(((Cnt * Sumlny2) - (Sumlny
^ 2)) / (Cnt * (Cnt - 1)))
PRINT "------------------------------------------------------------------------------"
b = (Cnt * Sumxlny - Sumx * Sumlny) / (Cnt * Sumx2 Sumx ^ 2): a = EXP((Sumlny - b * Sumx) / Cnt)
PRINT "Terme constant de la regression a : "; a
PRINT "Coefficient de regression b : "; EXP(b)
PRINT "Coefficient de corelation r : "; (Cnt *
Sumxlny - Sumx * Sumlny) / SQR((Cnt * Sumx2 - Sumx ^
2) * (Cnt * Sumlny2 - Sumlny ^ 2))
INPUT "Tapez ENTER"; a$
RETURN
' -------------------------------- Stat a 2 var de
puissance ------------------1035 IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF
Sumlnx = 0: Sumlnx2 = 0: Sumlny = 0: Sumlny2 = 0:
Sumlnxlny = 0
CLS
Cnt = Nbr%
FOR n = 1 TO Cnt
Sumlnx = Sumlnx + LOG(Xpts(n, 1))
Sumlnx2 = Sumlnx2 + LOG(Xpts(n, 1)) ^ 2
Sumlny = Sumlny + LOG(Xpts(n, 2))
Sumlny2 = Sumlny2 + LOG(Xpts(n, 2)) ^ 2
Sumlnxlny
=
Sumlnxlny
+
LOG(Xpts(n,
1))
*
LOG(Xpts(n, 2))
NEXT n
PRINT "------------------- Analyse de regression de
puissance Y=aX^b -----------------"
PRINT "Nombre de donnees : "; Cnt
PRINT "Somme des valeurs logarithmiques des donnees
X : "; Sumlnx
PRINT "Somme des donnees logarithmiques des donnees
Y : "; Sumlny
PRINT "Somme des carrees des valeurs logarithmiques
des donnees X : "; Sumlnx2

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

PRINT "Somme des carrees des valeurs logarithmiques


des donnees Y : "; Sumlny2
PRINT "Somme des produits des valeurs logarithmiques
de X et de Y : "; Sumlnxlny
PRINT "------------------------------------------------------------------------------"
PRINT TAB(25); "Moyenne logarithmique X : "; Sumlnx
/ Cnt
PRINT TAB(25); "Moyenne logarithmique Y : "; Sumlny
/ Cnt
PRINT "------------------------------------------------------------------------------"
PRINT "Ecart type sur une population logarithmique
de donnees X/ n
: "; SQR(((Cnt * Sumlnx2) - (Sumlnx
^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur une population logarithmique
de donnees Y/ n
: "; SQR(((Cnt * Sumlny2) - (Sumlny
^ 2)) / (Cnt ^ 2))
PRINT "Ecart type sur un echantillon logarithmique
de donnees X/ n-1 : "; SQR(((Cnt * Sumlnx2) - (Sumlnx
^ 2)) / (Cnt * (Cnt - 1)))
PRINT "Ecart type sur un echantillon logarithmique
de donnees Y/ n-1 : "; SQR(((Cnt * Sumlny2) - (Sumlny
^ 2)) / (Cnt * (Cnt - 1)))
PRINT "------------------------------------------------------------------------------"
b = (Cnt * Sumlnxlny - Sumlnx * Sumlny) / (Cnt *
Sumlnx2 - Sumlnx ^ 2): a = EXP((Sumlny - b * Sumlnx) /
Cnt)
PRINT "Terme constant de la regression a : "; a
PRINT "Coefficient de regression b : "; b
PRINT "Coefficient de corelation r : "; (Cnt *
Sumlnxlny - Sumlnx * Sumlny) / SQR((Cnt * Sumlnx2 Sumlnx ^ 2) * (Cnt * Sumlny2 - Sumlny ^ 2))
INPUT "Tapez ENTER"; a$
RETURN
1045 PRINT "Estimation de Y"
INPUT "Donnez X"; x
PRINT "Y=a+bx si X="; x; "alors Y="; a + b * x
PRINT "Y=a+b lnx si X="; x; : IF x > 0 THEN PRINT
"alors Y="; a + b * LOG(x) ELSE PRINT "Impossible
x<=0"
PRINT "Y=ab^x si X="; x; "alors Y="; a * b ^ x
PRINT "Y=ax^b si X="; x; : IF x > 0 THEN PRINT "alors
Y="; a * x ^ b ELSE PRINT "Impossible x<0"
INPUT "Tapez ENTER"; a$
RETURN
1065 PRINT "Estimation de X"
INPUT "Donnez Y"; y
IF b <> 0 THEN
PRINT "Y=a+bx si Y="; y; "alors X="; (y - a) /
b
PRINT "Y=a+b lnx si Y="; y; "alors X="; EXP((y
- a) / b)
PRINT "Y=ab^x si Y="; y; "alors X="; (y / a) ^
(1 / b)
PRINT "Y=ax^b si Y="; y; : IF b > 0 THEN PRINT
"alors X="; LOG(y) / (a * LOG(b)) ELSE PRINT
"Impossible car b ngatif"
ELSE
PRINT "Impossible car b est nul"
END IF
INPUT "Tapez ENTER"; a$
RETURN
'
---------------------------------Regression
polynomiale -------------------1075 IF Pts! <> -1 THEN
PRINT "Les points n'ont pas ete donnee"
RETURN
END IF
PRINT "Regression Polynomiale"
Z$ = "Tapez 'Return' pour retourner au menu"
GOSUB 1041
DO
PRINT "Menu"
PRINT "1) Calcul de P(x)"
PRINT "2) Calcul de P'(x)"
PRINT "3) Calcul de primitive"
PRINT Z$
INPUT "?> ", a$
IF a$ = "" THEN EXIT DO
Me = VAL(a$)
ON Me GOSUB 1055, 1056, 1057
LOOP
RETURN
1055 PRINT "Calcul de p(x)"

CHIMIE INDUSTRIELLE

28

DO
PRINT Z$
INPUT "?Donnez valeur de la variable ? ", a$
IF a$ = "" THEN EXIT DO
x = VAL(a$)
U = x
y = a(0)
FOR I = 1 TO Id
y = y + a(I) * U
U = U * x
NEXT I
PRINT "p("; x; ")="; y
LOOP
RETURN
1056 PRINT "Calcul de p'(x)"
DO
PRINT Z$
INPUT "?Donnez valeur de la variable ? ", a$
IF a$ = "" THEN EXIT DO
x = VAL(a$)
U = x
y = a(1)
FOR I = 2 TO Id
y = y + a(I) * U * I
U = U * x
NEXT I
PRINT "p'("; x; ")="; y
LOOP
RETURN
1057 PRINT "Calcul de P(x)"
DO
PRINT Z$
INPUT "?Donnez les deux bornes d'integration A,B
", a$, b$
IF a$ = "" OR b$ = "" THEN EXIT DO
a = VAL(a$)
b = VAL(b$)
x = a
GOSUB 1060
a = y
x = b
GOSUB 1060
PRINT "P("; a$; ","; b$; ")="; y - a
LOOP
RETURN
1060 U = x
y = 0
FOR I = 0 TO Id
y = y + a(I) * U / (I + 1)
U = U * x
NEXT I
RETURN
1041 FOR n = 0 TO 13: a(n) = 0: NEXT n: FOR n = 0 TO
8: t(n) = 0: FOR m = 0 TO 7: r(m, n) = 0: NEXT m: NEXT
n
Coupe = 0
DO
INPUT "Donnez le degre du polynome (n<6) ", Id
LOOP UNTIL Id < 6 AND Id > 1
n = Nbr%
FOR I = 1 TO Nbr%
x = Xpts(I, 1)
y = Xpts(I, 2)
FOR J = 2 TO 2 * Id + 1
a(J) = a(J) + x ^ (J - 1)
NEXT J
FOR K = 1 TO Id + 1
r(K, Id + 2) = t(K) + y * x ^ (K - 1)
t(K) = t(K) + y * x ^ (K - 1)
NEXT K
t(Id + 2) = t(Id + 2) + y * y
NEXT I
a(1) = n
FOR J = 1 TO Id + 1
FOR K = 1 TO Id + 1
r(J, K) = a(J + K - 1)
NEXT K
NEXT J
FOR J = 1 TO Id + 1
K = J
1042 IF r(K, J) <> 0 THEN
GOTO 1043
END IF
K = K + 1
IF K <= Id + 1 THEN
GOTO 1043
END IF
PRINT "Pas de solution unique"
Coupe = 1
IF Coupe = 1 THEN EXIT FOR

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

1043 FOR I = 1 TO Id + 2
SWAP r(J, I), r(K, I)
NEXT I
Z = 1 / r(J, J)
FOR I = 1 TO Id + 2
r(J, I) = Z * r(J, I)
NEXT I
FOR K = 1 TO Id + 1
IF K = J THEN
GOTO 1044
END IF
Z = -r(K, J)
FOR I = 1 TO Id + 2
r(K, I) = r(K, I) + Z * r(J, I)
NEXT I
1044 NEXT K
NEXT J
IF Coupe = 1 THEN
RETURN
END IF
PRINT
P = 0
FOR J = 2 TO Id + 1
P = P + r(J, Id + 2) * (t(J) - a(J) * t(1) / n)
NEXT J
Q = t(Id + 2) - t(1) * t(1) / n
Z = Q - P
I = n - Id - 1
r = P / Q
PRINT "Polynome des moindres carres"
FOR K = 0 TO 6
a(K) = 0
IF K < Id + 1 THEN
a(K) = r(K + 1, Id + 2)
END IF
IF a(K) > 0 THEN

0.7.

29

PRINT "+";
END IF
IF K < Id + 1 THEN
PRINT a(K);
ELSE
GOTO 1046
END IF
IF K > 0 THEN
PRINT "*X";
IF K > 1 THEN
PRINT "^"; K;
END IF
END IF
1046 NEXT K
PRINT
PRINT "Coefficient de Correlation:"; SQR(r)
IF I <> 0 THEN
PRINT "Erreur standard de l'estimation:"; SQR(Z /
I)
END IF
RETURN

9500 PRINT CHR$(7); CHR$(7); CHR$(13); ERR


IF ERR = 53 OR ERR = 62 THEN PRINT "Erreur Fatale Fichier STRADI.FE absent ou anormal - On va le
creer.": PRINT : GOSUB 9000: RESUME 5 ELSE PRINT
"Erreur lors d'un calcul - on recommence tout": FOR n
= 1 TO 5000: NEXT n: RESUME 3
9900 minute = (heure - INT(heure)) * 60
seconde = (minute - INT(minute)) * 60
heure$ = STR$(INT(heure)) + "h" + STR$(INT(minute)) +
"'" + STR$(INT(seconde)) + "''"
RETURN

Spectre lectromagntique

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

30

Dr. Gilles OLIVE

TP 1 ACIDIMETRIE
1.1.

Mise en solution

Tout travail quantitatif ncessite la mise en solution d'une quantit bien dtermine de l'chantillon
analyser et la dilution de cette solution un volume connu.

Sur un verre de montre, pralablement pes, placer une quantit calcule de la poudre analyser.
Par pese, dterminer avec prcision la quantit de l'chantillon.

Ensuite introduire quantitativement cette fraction dans un vase de berlin (bien propre). Nettoyer
consciencieusement le verre de montre l'aide d'un jet de pissette, ajouter le solvant appropri
(l'eau le plus souvent). Chauffer ventuellement pour amliorer la dissolution et ensuite ramener le
liquide la temprature proche de 20 C. Introduire cette solution quantitativement dans un
ballon jaug. Rincer soigneusement le rcipient qui a servi la dissolution (pour viter toute perte
de substance, il est prfrable de travailler avec de petites quantits d'eau que deux fois une grande
quantit). Ajouter ces eaux de lavage la solution dans le ballon jaug et porter exactement au trait
de jauge l'aide d'une pissette ou d'une pipette.

Boucher le ballon et le retourner plusieurs fois en agitant pour obtenir une solution homogne
(absence des stries visibles travers le liquide).

Remarque: Si on emploie un agitateur ou un entonnoir, ne pas les abandonner avant de les avoir
rincs 2 ou 3 fois avec de l'eau distille et de recueillir ces eaux de rinage avant la mise au trait.
Coller une tiquette comportant les indications suivantes:
- le nom de l'tudiant - groupe - quipe,
- la nature et la concentration de la solution,
- la date de sa prparation.

1.2.

Nettoyage de la verrerie

Tout travail analytique prcis ne peut se faire qu' l'aide d'une verrerie parfaitement propre, en
particulier dpourvue de toutes traces de graisse. Aprs toute manipulation, la verrerie est lave avec
un dtergent (si ncessaire), rince plusieurs fois l'eau de robinet puis l'eau distille et ensuite mise
scher. Les rinages s'effectuent avec des petites quantits d'eau.
Si ce traitement simple s'avre inefficace il faut traiter la verrerie chimiquement, par exemple:
- les traces de calcaire peuvent tre enleves par un traitement l'acide (par ex. HCl 6 M),
- les traces de AgCl ou de AgI peuvent tre limines par une solution d'NH3,
- les produits organiques (verrerie grasse) peuvent tre limins par l'actone etc.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

31

Tome TP
Dr. Gilles OLIVE
1.3.
Note sur les ractifs "pour analyse" (P.A.)
-

Les produits "pour analyse" prsentent un degr de puret remarquable. Ils sont cependant
beaucoup plus chers: il faut donc les utiliser avec la plus stricte conomie.
viter toute contamination en observant la plus grande propret de la spatule ou de la cuillre.
Ne jamais remettre dans le flacon un produit non utilis.
Ne pas ouvrir plus d'un flacon la fois et le reboucher aussitt aprs usage.

La contamination d'un ractif est toujours grave car elle peut fausser tous les rsultats.
1.4.

Principe de la titrimtrie

La concentration d'une solution d'acide ou de base est par dfinition le nombre de moles d'acide (ou de
base) contenu dans un litre de solution selon:
C=

n
V

Pour un volume dtermin de solution, le nombre de moles sera donc exprim par C.V o C est le
titre molaire de la solution exprim en mol.L-1 et V le volume, exprim en litres.
Dans la raction de neutralisation, un quivalent d'acide ragit avec un quivalent de base pour donner
un quivalent de sel ; lorsque le calcul s'effectue de faon molaire, cela veut dire qu'il faut tenir des
coefficients prsents dans la raction de neutralisation. A la neutralit la relation suivante est vrifie:
C1V1 = C2V2
C1 et V1 sont le titre et le volume de l'acide,
C2 et V2 sont le titre et le volume de la base (ou inversement)
1.5.

Le rle de l'indicateur acide-base

L'instant prcis de la neutralisation peut tre dtermin par le virage d'un indicateur qu'on ajoute la
solution en trs faible quantit (2-3 gouttes).
Lors d'un titrage acide-base, il y a un changement de l'acidit de la solution (pH). Le pH est dfini
comme - log[H30+] et varie entre 0 et 14. De 0 7 la solution est acide et de 7 14 la solution est
basique. A l'quivalence un grand changement de pH se produit sous l'influence d'une goutte de ractif.
Ce changement de pH provoque le changement de la coloration de l'indicateur car c'est une substance
qui possde une couleur diffrente en milieu acide et en milieu basique.
Chaque indicateur change de couleur dans une zone de pH qui lui est propre et qui dtermine le choix
de l'indicateur selon les ractifs utiliss.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
1.6.
Diffrents types des titrages

32

1.6.1.
Titrage direct et inverse
Selon la manire de raliser un titrage, on parle d'un titrage direct, invers ou un titrage en retour. Le
titrage est dit direct lorsque la solution de titre connu se trouve dans la burette et la solution de titre
inconnu dans le berlin. Exemple: titrage de NaOH de titre inconnu par HCl. Lorsque la solution
inconnue se trouve dans la burette, on parle de titrage inverse (Exemple: titrage de HCl par Na2CO3).

1.6.2.
Titrage en retour
Beaucoup de titrages s'effectuent par un titrage en retour. Dans ce type de titrage deux solutions
interviennent pour doser une solution inconnue. A une solution de titre inconnu (par exemple une base
1), on ajoute une solution de titre connu en excs (par exemple un acide 2), l'excs de cette solution est
titr par une troisime solution de titre connu (base 3). Pour faciliter la comprhension du calcul, le
schma suivant est trs utile.

base (1)
CHIMIE INDUSTRIELLE

acide (2)
07/01/2005

base (3)
1re Edition

Tome TP

1.7.

33

Dr. Gilles OLIVE

Ralisation pratique des solutions dilues

Un des problmes courants du laboratoire consiste prparer des solutions dilues. Ce problme se
rencontre dans tous les laboratoires (chimie, microbiologie, etc..)
1.7.1.
Quelques dfinitions
Une solution est compose d'un solut (le corps dissous) et d'un solvant (eau ou solvant organique).
L'ensemble de deux constitue une solution.
Lorsque le solut reprsente des particules non solubilises, disperses au sein d'un diluant (solvant
contenant d'autres substances comme tampons etc. ), le terme de suspension sera utilis la place de
la solution. Ces termes sont plus reprsentatifs de la microbiologie.
La concentration reprsente la quantit de solut par unit de volume de la solution, en units
chimiques ou physiques. Dans d'autres cas la concentration donne le nombre des particules par volume
total (ou la masse totale) de la suspension.
Dans le texte qui suit nous utiliserons le terme solution, mais le lecteur comprendre que, s'il y a des
particules (bactries, spores de champignons ou autres cellules), il doit d'office traduire par
suspension. De la mme manire le terme solvant peut tre remplac par diluant et solut par
particules (voire cellules).

1.7.2.
Expression de la dilution
Diffrentes manires sont utilises pour exprimer la dilution selon le type de laboratoire et l'habitude
de chaque professeur, ce qui peut provoquer une confusion chez l'tudiant.
Exemple:
Le fait que la concentration finale est 100 fois plus faible peut tre crit de manires suivantes:
dilution 100 fois
dilution 1/100
dilution 10-2
Dans tous les cas la solution dilue possde une concentration plus petite que la solution initiale.
1.7.3.
Calcul de la dilution
Lors d'une dilution, la quantit de solut (ou nombre des particules) ne change pas, car on ajoute
uniquement du solvant (ou diluant).
Soit la concentration de la solution initiale (concentre):
C1
Soit la concentration de la solution finale dilue:
C2
Le produit de la concentration par le volume de la solution donne la quantit de solut dans la
solution. Selon l'expression de la concentration, la quantit de solut est exprime en grammes, en
nombre des particules, en moles ou en quivalents.
Le produit C.V donne: nombre de moles si la concentration est molaire
masse en g si la concentration est massique
nombre d'quivalents si la concentration est normale
nombre des particules (ou effectif) dans le cas d'une suspension.
Lors de la dilution, le produit C.V reste constant:
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

34

C1V1 = C2V2
La dilution ralise est donne par le rapport des concentrations ou des volumes:

Dilution = C1/C2 = V2/V1


Les calculs lis la dilution peuvent se prsenter sous deux formes:
On cherche la concentration de la solution dilue selon le mode opratoire cit en appliquant la
formule.
Exemple: 5 ml d'une solution de NaOH 0.5 M sont introduits dans un ballon jaug de 200 ml. Quelle
est la concentration de la solution dilue ?
C1 = 0.5 M , V1 = 5 ml, V2 = 200 ml
C2 =

C1 .V1 0.5 M.5 ml


=
= 0.0125 M
V2
200 ml

Quelle est la dilution ralise ?


C1/C2 = 0.5/0.0125 = 40 fois ou 1/40
Ou
V2/V1 = 200ml/5ml = 40 fois ou 1/40
On indique la dilution raliser (ou la concentration de la solution dilue) et on cherche la
manire pratique de le faire.
Exemple: Prparer une solution dilue 5 fois partir d'une solution de HCl 0.2 M.
La concentration de la solution dilue est videmment 5 fois plus faible, soit 0.04 M.
Le rapport des volumes est galement 1 pour 5. Pour raliser la solution dilue il faut donc 1 volume
de la solution concentre pour 5 volumes de la solution finale (ou 4 volumes de solvant). On peut donc
raliser cette solution dilue en portant 10 ml de solution concentre 50 ml de la solution dilue, ou
20 ml 100 ml, ou 50 ml 250 ml. Dans tous les cas (et dans le doute), le volume prlever peut tre
calcul par la formule C1V1 = C2V2
1.7.4.
Ralisation pratique
Dans les cas les plus courants et surtout au laboratoire de chimie, les dilutions sont ralises avec
la plus grande prcision, donc dans les ballons jaugs. Le volume du ballon jaug donne toujours
le volume de la solution dilue (jamais le volume de solvant).
Exemple 1: Pour raliser une dilution de 150 fois (ou1/150), 1 ml de la solution concentre (pris la
pipette jauge de prfrence) sera mis dans un ballon jaug de 150 ml et port au trait avec le solvant.
La mme dilution peut tre ralise en introduisant 2 ml de solution concentre dans un ballon jaug
de 300 ml.
Dans certains cas qui ne ncessitent pas autant de prcision (prparation des milieux, dilution
d'une suspension....) on ne prpare pas la solution dilue dans un ballon jaug, mais directement
dans un autre rcipient. Il faut dans ce cas calculer le volume de solvant ajouter pour raliser
cette solution dilue (ce volume reprsente le volume de la solution dilue - le volume de la
solution initiale). D'une manire plus gnrale pour raliser une dilution de X fois, il faut ajouter
(X-1) parts de diluant (de solvant) 1 part de suspension (solution) initiale.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

35

Exemple 2: pour prparer une solution dilue 5 fois, il faut une part de volume de la solution
concentre et 4 parts de solvant. Au total le volume de la solution finale est 5 fois plus grand, donc la
dilution est de 5 fois. Dans la pratique on peut prendre 10 ml de solution concentre et 40 ml de
solvant (ou 20 ml et 80 ml, etc. ...)
Exemple 3: prparer 1 litre d'une solution dilue 20 fois. Le rapport des volumes est donn par la
formule suivante: 20 = 1000 ml/X ml, d'o X = 50 ml. Il faut donc prendre 50 ml de la solution
concentre et 950 ml de solvant (1000 ml-50 ml).
Exemple 4: prparer 1 litre d'une solution dilue 10-3. Pour raliser une solution dilue 1000 fois, il
faut prendre 1 ml de la solution initiale et ajouter 999 ml de solvant. Dans la pratique et lorsque la
prcision demande n'est pas trop grande, on mettra 1ml pour 1 litre de solvant. Dans le cas d'une
dilution fort importante l'erreur est minime.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

36

Dr. Gilles OLIVE

MANIPULATION
ACIDIMETRIE
PREPARATION DES SOLUTIONS STANDARDS
DE HCl ET DE NaOH
A. PREPARATION D'UNE SOLUTION STANDARD D'HCl
1.8.

Prparation d'une solution d'HCl 0,1 M

La solution d'acide chlorhydrique concentr (d=1,19) est environ 12 M. A partir de cette solution,
prparer par dilution 1 litre de HCl 0.1 M par tudiant.
Le volume de HCl concentr prlever est calcul par la formule suivante:
C1V1 = C2V2
Mesurer un volume lgrement suprieur la valeur calcule au cylindre gradu et introduire dans un
ballon jaug de 1 litre, rempli au pralable moiti avec de l'eau distille. Diluer ensuite au litre et
homogniser convenablement.
Cette solution est prpare par dilution partir d'une solution concentre de titre approximatif, son titre
ne peut donc pas tre connu avec exactitude. Il doit tre dtermin par un titrage utilisant une base
considre comme standard primaire, par exemple Na2CO3.
1.9.

Prparation d'une solution standard de Na2CO3 (une par binme)

Un des standards primaires le plus frquemment utilis en acidimtrie est le carbonate de sodium
anhydre et pour analyse.
Ce produit est trs hygroscopique. Il faut le scher l'tuve 270 C pendant une heure (ou 150 C
pendant 3-4 heures). Aprs dshydratation, le laisser refroidir dans un dessiccateur.
Prparer 500 ml de Na2CO3 0.05 M (MM = 105.99 g/mol) par binme.
n = C.V
masse peser = n x MM
Peser de manire prcise, sur une balance analytique, une masse de Na2CO3 proche de la masse
calcule. Mettre en solution dans un vase de berlin (mlanger immdiatement) et transvaser
quantitativement dans un ballon jaug de 500 ml. Porter au trait et homogniser convenablement.
Calculer le titre exact de cette solution, qui sert de STANDARD PRIMAIRE.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

37

Tome TP
Dr. Gilles OLIVE
1.10. Standardisation de HCl par Na2CO3.

1.10.1.

Rappel thorique

L'quation de dosage peut se schmatiser comme suit:


Na2CO3 + 2 HCl

2 NaCl + H2O + CO2

Le terme de cette raction est rendu visible par l'emploi de mthylrouge comme indicateur.
milieu basique = jaune
milieu acide = rouge
Le titre de HCl est dtermin par le titrage inverse car la solution inconnue se trouve dans la burette.
1.10.2.

Ractifs
- Na2CO3 0,05 M
- HCl 0,1 M
- mthylrouge

1.10.3.

Mode opratoire
- pipette de 20 ml
- vase de berlin de 100 ou 150 ml
- burette de 50 ml
- A l'aide d'une pipette jauge,
transfrer 20 ml de le solution standard de Na2CO3
dans le vase de berlin.
- Ajouter 2-3 gouttes d'indicateur.
- Titrer par la solution de HCl.
Ds que le virage de l'indicateur est observ, porter la solution l'bullition durant deux minutes, pour
liminer le CO2 form au cours du titrage. En effet, le CO2 peut lui seul provoquer le changement de
coloration de l'indicateur, car il possde un caractre acide:
HCO3- + H+

CO2 + H2O

Le dgagement de CO2 provoque le retour de l'indicateur sa coloration initiale. Ajouter de l'HCl,


jusqu'au nouveau virage de l'indicateur la couleur acide, porter nouveau l'bullition.
Le titrage est termin lorsqu'une bullition de 2 minutes ne provoque plus de virage de l'indicateur.
Effectuer 3 mesures qui ne peuvent s'carter de plus de 0,1 ml.
Calculer le titre de la solution de l'acide chlorhydrique.
Effectuer le mme dosage en utilisant le Na2CO3 de titre connu du coquipier.
La solution de HCl, dont le titre vient d'tre dtermin, constitue le STANDARD SECONDAIRE et
peut tre utilise pour les dosages ultrieurs.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

38

Dr. Gilles OLIVE

B. PREPARATION D'UNE SOLUTION STANDARD DE NaOH


1.11.

Prparation d'une solution de NaOH 0,1 M.

Le NaOH est fortement hygroscopique et se carbonate facilement selon les quations suivantes:
NaOH + CO2

NaHCO3 ;

NaHCO3 + NaOH

Na2CO3 + H2O

Le titre de la solution ne peut donc pas tre calcul partir d'une pese. Cette solution sera prpare de
manire approximative.
Prparer 1 L de NaOH 0,1 M par tudiant.
Peser, dans un vase de berlin, de manire approximative une masse de NaOH de 20 % suprieure la
masse calcule. Sur les pastilles verser un peu d'eau distille, agiter et liminer rapidement l'eau de
lavage (pour dissoudre la couche superficielle invitablement souille de carbonate). Introduire ensuite
la solution de NaOH dans un ballon jaug d'un litre et porter au trait de jauge. Homogniser.
1.12.

Standardisation de NaOH par HCl.

1.12.1.
Rappel thorique
La solution de NaOH sera dose par la solution titre de HCl selon l'quation:
NaOH + HCl
NaCl + H2O
L'indicateur employ est le mthylrouge.
Le titre de NaOH est dtermin par un titrage direct car la solution inconnue se trouve dans le vase de
berlin.
1.12.2.

Ractifs
- HCl 0,1 M
- NaOH 0,1 M
- mthylrouge

1.12.3.

Mode opratoire
- pipette de 20 ml
- vase de berlin de 100 ou 150 ml
- burette de 50 ml
- Prlever 20 ml de solution de NaOH doser et les
introduire dans un vase de berlin.
- Ajouter 2-3 gouttes d'indicateur.
- Titrer par la solution standard de HCl.
- Effectuer 3 titrages.
- Calculer le titre de la solution.

La solution de NaOH, dont le titre vient d'tre dtermin, constitue le STANDARD TERTIAIRE et
peut tre utilise pour les dosages ultrieurs.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

39

Dr. Gilles OLIVE

C. DOSAGE DES SOLUTIONS INCONNUES DES BASES


Chaque binme dosera une solution inconnue de Na2CO3

- Pour le dosage, chacun utilisera son propre HCl.


- Les solutions inconnues sont distribues dans des ballons
jaugs portant le numro de la solution.
- Les ballons jaugs sont ports au trait de jauge avec de l'eau
distille (100 ml) et bien homogniss.
- 10 ml de solution basique sont prlevs pour chaque dosage.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

40

Dr. Gilles OLIVE

TP 2 CHROMATOGRAPHIE SUR PAPIER


Sparation des constituants d'encres
2.1.

PRINCIPE

La chromatographie sur papier est une mthode de sparation base sur la diffrence de coefficient de
partage entre deux phases dont l'une est stationnaire et l'autre mobile.
Techniques principales:
chromatographie ascendante
chromatographie descendante
chromatographie deux directions
2.2.

TECHNIQUE GENERALE

2.2.1.
PAPIER
Utiliser des feuilles de papier Whatman nl de
25 cm de ct pour la chromatographie ascendante.
25 cm de ct pour la chromatographie deux directions.
25 cm sur 11 cm pour la chromatographie descendante.
(ces dimensions ne sont donnes qu'en fonction des cuves)

A 2 cm du bord, tracer une ligne AU CRAYON. Cette ligne doit toujours se trouver environ 1
cm au-dessus du niveau atteint par le solvant. Cette ligne servira pour les dpts.
2.2.2.
SOLVANT
Prparer les solvants comme indiqu pour chaque exprience et les garder dans des flacons de
polythylne (secs et propres ).
Verser dlicatement 50 ml de solvant au fond de la cuve et couvrir celle-ci afin d'empcher
l'vaporation du solvant.
2.2.3.
APPLICATION DES ECHANTILLONS
Dposer les diffrentes substances l'aide d'un fin tube capillaire sur la ligne de dpt. La tache doit
avoir un diamtre de 5 mm. Les dpts doivent tre le plus possible au centre de la feuille mais ne
pas se chevaucher.
2.2.4.
OPERATION
Rouler la feuille de papier afin de former un cylindre. Agrafer la feuille en haut et en bas. Veiller ce
que les bords verticaux de la feuille ne se chevauchent pas. Introduire le cylindre dans la cuve en
veillant ce qu'il ne touche pas les parois latrales, et replacer le couvercle. La ligne des dpts doit se
situer au-dessus du solvant pour ne pas noyer les taches. Arrter la sparation ds que le solvant arrive
environ 3 cm du sommet.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
41
2.2.5.
SECHAGE DU CHROMATOGRAMME
Lorsque le chromatogramme est suffisamment dvelopp, on l'enlve de la cuve et on marque AU
CRAYON la hauteur atteinte par le solvant. Scher le chromatogramme.
2.2.6.
DEVELOPPEMENT DU CHROMATOGRAMME
Les substances tant colores, l'identification est immdiate. On aura cependant avantage entourer les
taches.
2.2.7.

LE Rf ET LE Rx
Rf =

distance parcourue par le compos depuis l' origine


distance parcourue par le solvant depuis l' origine

Prendre le centre de gravit des taches pour mesurer les distances.


Comme le dnominateur est toujours suprieur au numrateur, Rf est toujours infrieur 1. Le Rf
s'exprime par 2 chiffres derrire la virgule sans exposant.
Pour des conditions identiques (temprature, temps, solvant, etc...) Rf est une constante caractristique
de la substance au mme titre que son point de fusion. Rf dpend fortement de la temprature, de la
nature du papier et du solvant.
Dans certains cas, la sparation n'est pas suffisante et il faut laisser migrer le solvant jusqu' la fin du
papier et mme au-del. Dans ce cas, il n'est plus possible de calculer Rf. On utilise alors une substance
de rfrence laquelle on compare la migration des autres substances. On parle alors de Rx:
Rx =

distance parcourue par le compos depuis l' origine


distance parcourue par la substance de rfrence depuis l' origine

N.B. On remplace souvent "x" par la premire lettre du nom de la substance de rfrence.
2.3.

REACTIFS

A prparer juste avant l'emploi.


solvant A
n-butanol/norvanol/solution d'ammoniaque 2 M dans les proportions volumiques
60/20/20
solvant B
eau/solution sature de sulfate d'ammonium/norvanol dans les proportions volumiques
70/15/15
(norvanol = Ethanol - Ether - Eau 90 % V/V - 2.9 % V/V - 9 % m/V)
2.4.

MODE OPERATOIRE

2.4.1.
CHROMATOGRAPHIE ASCENDANTE
- la ligne de dpt se situe au fond de la cuve (voir remarque ci-dessus)
- faire une chromatographie avec le solvant A de 4 encres et du mlange des 4
- idem avec le solvant B (5 dpts pour chaque chromatographie).

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
42
2.4.2.
CHROMATOGRAPHIE A DEUX DIRECTIONS
- verser le solvant A et couvrir la cuve
- marquer une origine au crayon ( 2.5 cm du bord vertical) y appliquer le mlange des 4 encres.
ATTENTION 1 SEUL DEPOT 2.5 cm du bord vertical
- introduire le papier dan la cuve
- aprs dveloppement et schage, tracer une ligne au crayon le long du premier dveloppement
- marquer d'une croix l'emplacement des taches
- recommencer la chromatographie en utilisant le solvant B et en tournant la feuille de 90
2.4.3.

CHROMATOGRAPHIE DESCENDANTE

- la ligne de dpt se situe en haut de la cuve au-del du bac de solvant, environ 7 cm du bord suprieur de la
feuille.
- le solvant se met dans le bac situ en haut de la cuve
- faire une chromatographie avec le solvant A de 4 encres et du mlange des 4.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

43

Dr. Gilles OLIVE

TP 3 SYNTHESE DE L'ACIDE
ACETYLSALICYLIQUE
3.1.

PRINCIPE

3.1.1.

Acetylation
O
O

OH

H3C C

H3C C

COOH
Acide salicylique

O C CH3

H3C C

COOH

Anhydride actique

O
+

Acide actylsalicylique
ou aspirine

OH

Acide actique

Mcanisme:
H

OH
+
COOH

O
H3C C O
H3C C
O

O
O C CH3

O
+

H3C C

COOH

O
O C CH3
+

COOH

O
H3C C

CHIMIE INDUSTRIELLE

O
H3C C

07/01/2005

OH

1re Edition

Tome TP

44

Dr. Gilles OLIVE

3.1.2.

Dosage de l'acide
O

O C CH3

O C CH3
+

NaOH

COOH

3.1.3.

H2O

COONa

Hydrolyse basique
O
O C CH3

OH
+

NaOH

COONa

CH3COONa

COONa

Mcanisme:
-

O
O C CH3
OH

O C CH3
+

Na

OH

OH

O
+

Na

O
+

+ Na + HO C CH3

O C CH3

COONa

3.2.

Na

COONa

COONa

COONa

REACTIFS
- acide salicylique
- anhydride actique
- actate de sodium
- glace
- norvanol (Ethanol - Ether - Eau 90 % V/V - 2.9 % V/V - 9 % m/V)
- solution de FeCl3
- 5 L de NaOH de titre connu (environ 0.5 M)
- 5 L de H2SO4 de titre connu (environ 0.25 M)

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
3.3.
MODE OPERATOIRE

45

Dr. Gilles OLIVE

Dans un erlenmeyer de 250 ml, on introduit environ 5 g d'acide salicylique, 5 ml d'anhydride actique
et 0,5 g d'actate de sodium SEC.
Le flacon, muni d'un tube chlorure calcique, est chauff pendant 15 minutes au bain-marie bouillant
(bien agiter).
On verse ensuite le contenu encore chaud dans un mortier o la masse cristallise par refroidissement.
Le produit est alors broy dans un peu d'eau glace, puis essor dans un bchner.
Laver 5 fois avec de l'eau. Effectuer le test au FeCl3 sur les dernires gouttes des eaux de lavage
jusqu' n'avoir plus qu'une lgre coloration avec FeCl3. (Les phnols donnent une coloration violette
avec FeCl3. L'acide salicylique libre donne la mme raction.)
Le produit est purifi par cristallisation dans le norvanol dans un erlenmeyer de 50 ml. Ajouter environ
3 ml de norvanol (voir page 44).
Les cristaux ainsi purifis sont essors, schs et pess, PUIS PLACES DANS UN DESSICCATEUR
PENDANT UNE SEMAINE (les titrages se feront la semaine suivante).
3.3.1.

TITRAGE DE L'ACIDE ACETYLSALICYLIQUE

L'acide actylsalicylique est dos en dissolvant environ 1 g pes prcisment dans environ 10 ml de
norvanol et en titrant, froid, au moyen d'une solution titre (par HCl 0,1 M du TP acidimtrie) de
NaOH 0.5 M. On utilise la phnolphtaline comme indicateur.
3.3.2.

INDICE DE SAPONIFICATION

Ajouter la burette, la solution obtenue par le titrage prcdent un nombre de ml de la solution


titre de NaOH double par rapport celui qu'a exig la neutralisation.
Munir l'erlenmeyer d'un tube de sret et chauffer au bain-marie bouillant pendant 30 minutes.
L'ester actique est saponifi en actate de sodium et salicylate de sodium.
Dterminer l'excs de NaOH par titrage en retour au moyen d'une solution titre (par NaOH 0,1 M du
TP acidimtrie) d'acide sulfurique 0.5 N (soit 0,25 M), en prsence de phnolphtaline.
Soustraire, du nombre de moles de NaOH mis en uvre dans cette exprience, le nombre de mole
d'acide sulfurique qu'a exig le titrage en retour. On obtient ainsi le nombre de mole de NaOH utiliss
pour la saponification. (Les nombres de moles de NaOH utiliss dans la neutralisation et dans la
saponification doivent tre gaux.)
3.3.3.

Chromatographie sur couche mince (CCM)

Rechercher la puret par CCM. Pour cela, il vous faudra dterminer le meilleur luant ainsi qu'un bon
rvlateur.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
3.4.

Dr. Gilles OLIVE

46

RECRISTALLISATION
Dissoudre par lger chauffage le produit
recristalliser dans le moins possible de solvant,
mais de manire ce que ce dernier soit quand
mme en trs lger excs. On devra donc procder
des ajoutes successives de petites quantits de
solvant.
Par refroidissement, le corps cristallise au sein du
liquide. On le spare ensuite par filtration. Si le
produit ne parvient pas cristalliser, on vaporera
UN TOUT PETIT PEU de solvant ou on place
l'erlenmeyer au frigo.
Il ne faut pas employer des erlenmeyers trop
grands. La taille de ces derniers sera choisie en
fonction de la quantit de produit recristalliser, de
telle sorte que, lors du chauffage, il reste encore
suffisamment de solvant dans le fond de
l'erlenmeyer.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

47

TP 4 SYNTHESE DU PARACETAMOL
Le Paractamol, est un mdicament analgsique et antipyrtique, en vente libre, utilis pour
soulager les douleurs mineures telles que les maux de tte et les courbatures, et pour faire tomber
la fivre. Comme les autres analgsiques courants, l'aspirine et l'ibuprofne, le paractamol
soulage la douleur en inhibant la synthse des prostaglandines dans l'organisme. Il ne traite pas
l'inflammation comme les deux autres analgsiques cits, mais il n'irrite pas non plus la muqueuse
tapissant l'estomac comme l'aspirine a tendance le faire chez certains individus. Une surdose
importante d'actaminophne peut provoquer de graves lsions du foie.
C'est une molcule entrant dans la composition des mdicaments comme le Dafalgan, le Doliprane
qui comptent aujourd'hui parmi les mdicaments les plus utiliss en Belgique avec l'Aspirine, mais
efficacit gale, il prsente moins d'effets indsirables. Ce mode opratoire propose de
synthtiser la molcule de paractamol (molcule ci-dessous) et de vrifier la qualit du produit
synthtis.
O
H
C CH
N
3

OH

4.1.

Matriel et ractifs

Ballon de 250 mL
Coupelle en plastique
Eprouvettes de 10 mL et 50 mL
Cuve thermostat
Cristallisoir

Rfrigrant boules
Dispositif de filtration sous vide
Banc de Kofler
Support lvateur
Matriel pour CCM (avec dtection sous
UV)
4.2.

Paraminophnol (solide)
2 mL d'acide thanoque pur (tube
essai not A)
3,5 mL d'anhydride thanoque (tube
essai not B)
luant:
actate
de
butyle/cyclohexane/acide formique.

Synthse du paractamol brut

4.2.1.

Dissolution du paraminophnol

Dans un ballon de 250 mL, introduire successivement 2,75g de paraminophnol, 25 mL d'eau et 2 mL


environ d'acide thanoque pur. Adapter un rfrigrant puis porter dans un bain-marie 80 C environ,
en agitant de temps autre, pour obtenir la dissolution complte.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
4.2.2.

Cristallisation

Refroidir ensuite dans un bain d'eau glace et attendre la cristallisation totale. Si vous ne l'observez
pas, gratter le fond du ballon avec un agitateur en verre puis le replacer dans l'eau glace.
Filtrer les cristaux sur Bchner l'aide de la pompe vide, rincer avec un peu d'eau glace.
Garder une pointe de spatule de ces cristaux pour dterminer leur point de fusion et l'tude par
chromatographie.
4.3.

48

Ramener la solution temprature ambiante en refroidissant le ballon dans un bain d'eau froide
(baisser le support lvateur puis remplacer la cuve par un cristallisoir d'eau froide).
Ajouter, par le haut du rfrigrant, par petites quantits, 3,5 mL d'anhydride thanoque.
L'addition termine, porter au bain-marie vers 60 C pendant 5 10 minutes.
4.2.3.

Dr. Gilles OLIVE


Synthse du paractamol

Purification du paractamol par recristallisation

Transvaser les cristaux dans le ballon de 250 mL qui a t rinc l'eau, et ajouter 40 mL d'eau.
Porter bullition jusqu' dissolution complte.
Laisser refroidir, puis placer dans un bain d'eau glace. Le paractamol se recristallise (gratter
galement le fond du ballon si vous ne l'obtenez pas).
Filtrer sur Bchner les cristaux obtenus ; les rincer avec un peu d'eau froide.
Placer les cristaux dans une coupelle.
4.4.

Chromatographie sur couche mince (CCM)

Placer dans 4 piluliers, 1 mL environ d'luant puis dissoudre dans chacun des piluliers une pointe
de spatule de:
paractamol brut
paractamol purifi
poudre issue d'un comprim de Doliprane
paraminophnol.

Raliser la chromatographie sur couche mince des 4 solutions. Laisser scher puis rvler sous UV.
4.5.

Donnes

Masse volumique de l'anhydride thanoque: = l,08 g.cm-3


Temprature de fusion du paractamol: Tf = 170 C
Solubilit dans l'eau:
paraminophnol: 8 g.L-1 20 C ; 33 g.L-1 60C et 80 g.L-1 100C
paractamol: 10 g.L-1 20 C ; 250 g.L-1 100C
anhydride thanoque: grande.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

49

TP 5 ANALYSE D'UNE EAU


Le but de ce laboratoire n'est pas tellement l'analyse d'une eau en soit mais surtout comment dans le
cadre de la qualit comment rendre un bon rapport d'analyse. Vous remarquerez que contrairement aux
autres TP, il n'y a pas de modle de rapport. En effet vous tes un laboratoire d'analyse et je vous
demande l'analyse d'une eau la plus complte possible. Vous allez devoir me rendre un certificat
d'analyse avec vos rsultats mais aussi avec toutes les donnes obligatoires qui sont indiqu dans le
chapitre "Mesures physico-chimiques in situ et prlvements d'chantillons". En tant que "client" je
rpondrais volontiers toutes vos questions. D'ailleurs dans votre rapport d'analyse, je ne souhaite pas
voir les calculs (cela n'intresse pas le client) mais seulement les rsultats.
5.1.

Duret de l'eau

La duret de l'eau est due la prsence des ions Ca2+ et Mg2+ (dans certains cas aussi Fe3+), qui
existent dans la solution sous forme de sels solubles. Selon la nature des sels que les ions alcalinoterreux peuvent former avec des ions ngatifs prsents dans l'eau, on distingue la duret temporaire et
la duret permanente.
Duret temporaire

La duret temporaire reprsente la quantit des ions Ca2+ et Mg2+ qui prcipitent par bullition. Elle est
due la prsence dans l'eau des ions hydrognocarbonates solubles (HCO3-), qui par chauffage se
transforment en carbonates donnant avec les ions Ca2+ des sels insolubles.

2 HCO3Ca2+ + CO32-

H2O + CO2 + CO32CaCO3

Lors du chauffage, on limine une partie d'ions Ca2+ et Mg2+ sous forme de prcipit qui s'incruste
dans les rcipients et porte le nom courant de tartre.

Duret permanente

La duret permanente reprsente la quantit des ions Ca2+ et Mg2+ qui restent en solution aprs
l'bullition.
Duret totale

Elle vaut la somme des durets permanente et temporaire. Elle reprsente la quantit totale des ions
Ca2+ et Mg2+ dans l'eau.
Expression de la duret

La duret de l'eau est exprime soit en degr franais (F) soit en degr allemand (A).
1F, degr franais correspond 10 mg de CaCO3 par litre d'eau.
1A, degr allemand correspond 10 mg de CaO par litre d'eau.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

50

Dr. Gilles OLIVE

5.1.1.

A: Dtermination de la duret de l'eau par acidimtrie

5.1.1.1.

Rappel thorique.

Dtermination de la duret temporaire.


On titre le volume dtermin d'eau par HCl 0,025 M en prsence de mthylrouge. Il se produit alors la
raction suivante, o HCO3- joue le rle d'une base.

HCO3- + H+
H2O + CO2
Le titrage dtermine le nombre de moles de HCO3- et par consquent le nombre de moles de Ca2+
pouvant prcipiter par chauffage avec les ions HCO3-, selon l'quation globale:

Ca2+ + 2 HCO3-

CaCO3 + H2O + CO2

L'eau ainsi neutralise servira pour l'essai suivant.


Dtermination de la duret totale.
Tous les ions Ca2+ et Mg2+ prsents dans l'eau sont HCO3-, prcipits par un excs de solution alcaline
mixte, compose de Na2CO3 et de NaOH de titres connus, selon les quations suivantes:
Ca2+ + CO32Mg2+ + 2 HO-

CaCO3
Mg(OH)2

Aprs la sparation du prcipit, une partie de la solution mixte alcaline est dose par la solution de
HCl 0,1 M en prsence de M-R.
Remarque: Les ions HCO3- qui se trouvaient dans la solution initiale et qui pourraient jouer le rle
d'un acide en prsence d'une base selon:
HCO3- + HOH2O + CO32ont t limins lors de la raction de dtermination de la duret temporaire.
5.1.1.2.

Ractifs

- HCl 0,025 M
- HCl 0,1 M
-NaOH 0,1 M
-Na2CO3 0,05 M
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

51

Dr. Gilles OLIVE


- mthylrouge
5.1.1.3.

Matriel

- ballon jaug de 100 ml.


- 2 ballons jaugs de 200 ou 250 ml.
- 2 entonnoirs
- papier filtre (n 595 S et S)
- vases de berlin de 400 ml.
- burette de 50 ml.
- pipettes jauges de 25, 50 et 100 ml.
5.1.1.4.

Mode opratoire

Duret temporaire.
- Prparer par dilution 100 ml d'HCl 0,025 M partir de sa propre solution d'HCl 0,1 M.
- Calculer son titre exact.
- Introduire respectivement 100 ml d'eau analyser, dans deux vases de berlin de 400 ml.
- Ajouter 2-3 gouttes de mthylrouge.
- Titrer par HCl 0,025 M jusqu'au virage de l'indicateur.
- Remarque: II faut travailler l'bullition pour chasser le CO2 et obtenir un virage plus prcis. La
coloration doit rester stable pendant 30 sec. chaud.
Duret totale.
- A la solution exactement neutralise, ajouter la pipette 25 ml de NaOH 0,1 M et 25 ml de Na2CO3
0,05 M.
- Faire bouillir ce mlange 5 minutes.
- Laisser refroidir, transvaser dans un ballon jaug de 200 ml, rincer le berlin et complter au volume
par de l'eau distille, rendre homogne.
- Filtrer partiellement travers un filtre sec, sur un erlenmeyer.
- Rincer l'erlenmeyer avec 20 30 premiers ml de filtrat.
- Prlever sur le reste 50 ml.
- Doser l'excs de ractif alcalin par HCl 0,1 M.
Duret permanente.
La duret permanente est calcule par diffrence de la duret totale et de la duret temporaire.
5.1.2.

5.1.2.1.

B: Dtermination de la duret de l'eau par complexomtrie

Rappel thorique

Sel disodique de l'acide thylne-diamine-ttractique est appel EDTA ou complexon III ou titriplex:
NaOOC CH2
N
HOOC

CHIMIE INDUSTRIELLE

CH2

CH2

CH2

07/01/2005

CH2

COONa

CH2

COOH

1re Edition

Tome TP

52

Dr. Gilles OLIVE

Le complexon III, comme les autres complexons, forme avec beaucoup de mtaux des complexes
internes qui sont trs stables et solubles dans l'eau. Dans ce cas, le mtal se substitue aux atomes
d'hydrogne des groupes carboxyles (-COOH) et se lie par une liaison coordinative avec les atomes
d'azote.
NaOOC CH2

CH2
N

2+

EDTA + M

CH2

CH2

N
CH2

H2C
COO-

M2+

COONa

+ H+

OOC

Dans ce titrage, on dose la duret totale de l'eau, c'est--dire la teneur totale de cette eau en Ca2+ et
Mg2+.
5.1.2.2.

Ractifs

- EDTA 0,01 M (MM = 372.24)


- Comprim d'indicateur tampon (murexide-riochrome T)
- NH3 conc.
5.1.2.3.

Matriel

- burette de 50 ml.
- erlenmeyer de 100 ou 250 ml.
- pipette jauge de 50 ml.
- pipette gradue de 5 ml.
5.1.2.4.

Mode opratoire

- Prlever une prise d'essai de 50 ml d'eau analyser.


- Dissoudre dans la prise d'essai 1 comprim d'indicateur tampon.
- Ajouter environ 1 ml de NH3 conc.
- Titrer par l'EDTA, ds l'ajout de NH3, jusqu'au virage du rouge-bordeau au gris-vert.
- Arrter d'ajouter le ractif ds la coloration grise et continuer d'agiter. Gnralement la
coloration verte apparat et le titrage est termin. Dans le cas contraire ajouter une ou
deux gouttes du ractif et agiter.

DTERMINATION DE LA DURET
5.1.3.

C: Mthode au ractif complexant4

Norme NF T 90 003, avril 1958, avec l'autorisation de l'Association franaise de normalisation


(AFNOR), 23, rue Notre-Dame-ds-Victoires, Paris (2e).
Seule, fait foi la norme originale dans son dition la plus rcente.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

53

Dr. Gilles OLIVE


5.1.3.1.

Objet de la norme

La prsente norme a pour objet la description d'une mthode de mesure de la duret des eaux au moyen
d'un ractif complexant.
5.1.3.1.1.

Gnralits

Le sel disodique de l'acide thylnediamine ttra-actique,


HOOC

N
NaOOC

H2C

CH2
CH2

CH2

N
H2C

CH2

COONa

COOH

connu sous des noms commerciaux divers se combine en solution aqueuse aux ions Ca2+ et Mg2+ et
ventuellement Sr2+, Ba2+ ... pour former des composs solubles trs peu dissocis (constantes 3,0 x
10-10 pour Ca et 5,0 x 10-8 pour Mg).
Un colorant bleu, l'riochrome noir T donne une coloration rouge, en se combinant avec l'ion Mg2+ (la
prsence d'ion Mg2+ est donc ncessaire, c'est pourquoi on en ajoute systmatiquement la solution
titrante) ; il peut donc servir d'indicateur de fin de raction car lorsque tout le calcium et tout le
magnsium se sont combins avec le ractif complexant, un trs lger excs de celui-ci dtruit la
combinaison riochrome-magnsium et ce moment il y a changement de la coloration de la solution.
5.1.3.1.2.

Principe

Formation des complexes des ions Ca2+, Mg2+ et, ventuellement Sr2+, Ba2+ ... avec une solution titre
de sel disodique de l'acide thylne diamine ttra-actique, en milieu tamponn pH 10. La fin de la
raction est indique par l'riochrome noir T.
5.1.3.2.

Ractifs

5.1.3.2.1.

Solution tampon (pH 10)a

Chlorure d'ammonium
Ammoniaque (d = 0,925)
Tartrate double de potassium et de sodium
Eau distille (q. s. p.)

34 g
285 ml
200 g
1 000 ml

L'addition de 0,5 g de chromate de potassium la solution tampon [I] rend le virage plus net.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

54

Dr. Gilles OLIVE


5.1.3.2.2.

Sel disodique de l'acide thylne diamine ttra-actique:

Solution N/50 (utilise pour le titrage):


Sel disodique de l'acide thylne diamine ttra-actique
Chlorure de magnsium (MgCl2, 6 H2O)
Eau distille

4g
0,1 g
1000 ml

Ajuster exactement cette solution la solution-talon de calcium (3) par titrage suivant le mode
opratoire ci-aprs, et addition d'eau distille de faon que 1 ml corresponde 0,4 mg de calcium.
5.1.3.2.3.
Calcium: solution-talon de calcium N/50, telle que 1 ml contienne 0,4 mg de
calcium

Introduire 1 g exactement pes de carbonate de calcium pur et sec dans une fiole jauge de 1 L ;
ajouter quelques millilitres d'eau distille et quelques gouttes d'acide chlorhydrique (d = 1,19) dilu au
demi, jusqu' dissolution complte ; ajuster 1 L avec de l'eau distille.
5.1.3.2.4.

riochrome noir T: solution indicateur:

riochrome noir T
Alcool absolu
Cette solution doit tre conserve l'abri de la lumire.
5.1.3.3.

0,25 g
100 ml

Mode opratoire

5.1.3.3.1.

Prise d'essai

Introduire 50 ml de l'eau analyser dans un erlenmeyer de 250 ml ; pour les eaux d'une duret
suprieure 9 m/l (45 f)b environ, faire une prise d'un volume infrieur et ajuster 50 ml avec de
l'eau distille ; pour les eaux d'une duret infrieure 2 m/l (10 f), si l'on dsire une grande
prcision, faire des concentrations, soit par vaporation (aprs addition de quelques gouttes d'acide
chlorhydrique), soit par l'emploi de rsines permutantes, mais oprer toujours le titrage sur un volume
de 50 ml.
5.1.3.3.2.

Dosage

Ajouter la prise d'essai:


Solution tampon [1]
Indicateur riochrome [4]

2 ml
2 4 gouttes

1 milliquivalent = 5 degrs franais. Pour la dfinition du milliquivalent, se reporter la norme NF T 90 000.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

55

Dr. Gilles OLIVE


5.1.3.3.3.

Agiter

Ensuite, la prise d'essai tant une temprature de 20 30 C, verser avec une burette la solution
titrante [2] lentement vers la fin du titrage jusqu' virage du rouge au bleuc ; soit n le nombre de
millilitres de solution qui ont t employs.
5.1.3.3.4.

Expression des rsultats

La duret de l'eau analyse, si la prise d'essai tait de 50 ml, est donne par les expressions:
4n/10 m/l ou 2n f.
5.1.3.3.5.

Prcision

La prcision est de l'ordre de 0,04 m/l (1/5 f).


5.1.3.3.6.

Procs-verbal d'essai

Le procs-verbal d'essai doit, outre les rsultats, mentionner toutes les conditions de l'essai et tous les
dtails opratoires non prvus dans la norme, ou facultatifs, ainsi que les incidents ventuels
susceptibles d'avoir agi sur les rsultats.
5.1.3.3.7.

Commentaires

(Conformment la dcision n 8 de M. le Commissaire la Normalisation, les commentaires la


prsente norme ne sont pas homologus.)
5.1.3.3.8.

Ions gnant le virage

Un certain nombre d'ions, des concentrations donnes, peuvent avoir une influence sur le virage et
rendre l'application de la mthode difficile sinon impossible. Il s'agit en fait d'eaux exceptionnelles.
Ba2+
A13+
Mn2+
Fe2+
Pb2+
Cu2+
Co2+
Ni2+
Hexamta-phosphate
Polyphosphate vitreux

Rend le virage imprcis au-del de 2 3 mg au litre.


Rend le virage imprcis au-del de 10 mg au litre.
Rend le virage imprcis par suite de la dcoloration de l'indicateur, au-del de 0,2 mg au litre.
Apporte une erreur de 0,02 m au litre (0,1 f) pour 2 mg au litre.
Apporte une erreur de 0,02 m au litre (0,10 f) pour 10 mg au litre.
Virage normal pour 0,1 mg au litre, pas de virage pour 1 mg au litre et plus.
Ne gne pas jusqu' 5 mg au litre.
Dosage impossible aux teneurs habituellement rencontres dans les eaux traites l'aide de ce
ractif (2 mg au litre).

Le virage a lieu du ros saumon au vert si on a ajout du chromate de potassium dans la solution tampon [1].

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
5.1.4.

56

Dr. Gilles OLIVE


Mthodes au savon4

Nous dcrivons assez succinctement parmi ces mthodes qui sont en voie de disparition, celle de
Boutron-Boudet.
5.1.4.1.

Principe

Les sels de Ca et Mg prcipitent les savons sous forme de savons de calcium ou de magnsium
insolubles. En consquence, quand on introduit une solution de savon dans une eau dure, aucune
mousse ne se produit tant que les sels de calcium et de magnsium n'ont pas t prcipits.
5.1.4.2.

Ractifs

En gnral, on achte la liqueur de savon toute prpare. Une division de la burette (1 ml de liqueur de
savon) correspond 0,2 m (1 f) pour une prise d'essai de 40 ml d'eau.
5.1.4.3.

Mode opratoire

Dans 40 ml d'eau analyser, on ajoute peu peu la liqueur hydrotimtrique place dans une burette.
On agite aprs chaque addition jusqu' obtention d'une mousse de 5 mm persistant 5 mn.
Si V est le nombre de millilitres consomms, la duret est
2(V - 0,1) m.
ou 10(V - 0,1) f.
Quand la duret est suprieure 6 m, il faut diluer l'eau avec de l'eau distille.

5.1.5.

Sparation des durets calcique et magnsienne4

Les sels de calcium et de magnsium contenus dans les eaux naturelles sont dosables par les mthodes
classiques. Il sufft d'exprimer les rsultats trouvs en degrs. Nanmoins, les durets calcique et
magnsienne sont le plus souvent dtermines comme suit:
5.1.5.1.

Principe

L'oxalate d'ammonium prcipite totalement les sels de calcium, tandis que l'oxalate de magnsium est
soluble.
5.1.5.2.

Ractifs

Solution d'oxalate d'ammonium


Liqueur hydrotimtrique

CHIMIE INDUSTRIELLE

07/01/2005

1,7 %.

1re Edition

Tome TP

57

Dr. Gilles OLIVE


5.1.5.3.

Mode opratoire

Agiter 50 ml d'eau avec 2,5 ml de solution d'oxalate, filtrer aprs quelques minutes et dterminer la
duret. Cette duret correspond aux sels de magnsium.
La diffrence entre la duret totale et la duret magnsienne donne la duret calcique.
5.1.6.

D: Autres expriences avec l'EDTA

5.1.6.1.

Principe

Cette mthode est destine fournir un renseignement rapide sur la duret d'une eau, c'est--dire sur sa
richesse en sels de calcium et de magnsium.
Elle consiste doser ces ions par complexomtrie, avec une solution titre d'E.D.T.A. Suivant la valeur
du pH de la solution et suivant l'indicateur utilis, la mthode permet de doser soit la somme des ions
calcium et magnsium, soit les ions calcium seuls.
DOSAGE DE CATIONS PAR FORMATION DE COMPLEXES
5.1.6.1.1.

Dfinition

Cette mthode de dosage s'appuie sur le fait que certains composs organiques (aminoacides) forment
des complexes cycliques ou "chlates" avec des ions mtalliques tels que les alcalino terreux et
certains mtaux lourds.
L'agent complexant le plus utilis" est l'acide thylnediamine-ttraactique ou son sel disodique
couramment appel "complexon" ou "E.D.T.A.".
Si on le reprsente par H2Na2Y, en solution aqueuse, il se dissocie suivant:
H2Y2- + 2 Na+

H2Na2Y

En prsence d'un cation divalent, par exemple, il se forme un complexe suivant la raction:
H2Y2- + M2+

MY2- + 2 H+

rgi par la constante de formation:


[MY 2- ][H + ]2
K=
[H 2 Y 2- ][M 2+ ]
5.1.6.1.2.

Influence du pH

La stabilit des complexes forme avec les diffrents cations, varie avec le pH. Certains d'entre eux,
pour lesquels la constante de formation est leve, sont stables depuis pH 5 jusqu'en milieu alcalin (ex.
Cu, Pb, Zn), d'autres, de constante de stabilit plus faible, tel celui du magnsium ne se forment pas en
milieu faiblement acide. Cette diffrence de comportement permet un dosage slectif en faisant varier
les conditions d'acidit.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.1.6.1.3.

58

Indicateurs

Les dosages complexomtriques se faisant en milieu tamponn, il n'est pas possible d'utiliser la
libration des ions H+ pour suivre le dosage.
On emploie gnralement les indicateurs formant avec les ions mtalliques des complexes cationindicateurs moins stables que la complexe cation-EDTA. D'autre part, la couleur de l'indicateur libre
doit tre trs diffrente de la couleur du complexe cation-indicateur.
Le choix de l'indicateur est trs important dans les dosages complexomtriques. En effet, un indicateur
est inutilisable si la constante de formation du complexe cation-indicateur est trop forte (blocage).
5.1.6.2.

Mode opratoire

Il s'agit de dterminer:
a) la duret totale de l'eau (ou titre hydrotimtrique total). Ceci reprsente la quantit d'ions
calcium et magnsium que contient une eau.
b) la teneur en ions calcium.
c) la teneur en ions magnsium.
d) le degr permanent.
Tout ceci l'aide d'une solution d'EDTA 0,01 M pralablement dose.
5.1.6.2.1.

Prparation d'un litre de solution d'EDTA 0,01 M

Dissoudre 4g environ d'E.D.T.A. (sel disodique) et 0,05g de chlorure de magnsium (MgCl2, 6H2O)
dans 1000 ml d'eau distille.
Agiter la solution pendant 10 15 mn pour que la dissolution de l'E.D.T.A. soit totale.
5.1.6.2.2.

Prparation de 100 ml de solution talon de carbonate de calcium

Dans un bcher, peser exactement environ la quantit ncessaire de carbonate de calcium pur. La
dissoudre dans environ 10 ml d'acide chlorhydrique 0,5 M (viter d'utiliser un gros excs d'acide).
Lorsque le solide est compltement dissout, transfrer quantitativement la solution dans une fiole
jauge de 100 ml Complter jusqu'au trait avec de l'eau distille.
5.1.6.2.3.

Dtermination du titre de la solution d'E.D.T.A. pH = 10.

Dans un erlen, introduire 10 ml de la solution talon de carbonate de calcium, 5 ml de solution tampon


pH 10 (prouvette gradue) et une trs faible quantit d'indicateur au noir riochtome. Titrer avec la
solution d'E.D.T.A. jusqu'au virage (rouge bleu).

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.1.6.2.4.

59

Dtermination du titre hydrotimtrique total d'une eau. pH = 10

Prlever exactement 10 ml d'eau (20 ml ou 50 ml pour une eau dont le titre hydrotimtrique est faible),
les introduire dans un erlen et y ajouter:
! 1 ml de solution tampon pH 10 (ou 2 ml ou 5 ml).
! une pince d'indicateur au noir riochrome.
Agiter. Verser lentement au moyen d'une burette, la solution d'E.D.T.A. jusqu'au virage de l'indicateur
(rouge bleu).
Soit x1 le volume vers et M la molarit de la solution d'E.D.T.A.
Calculer le titre hydrotimtrique total.
5.1.6.3.

Expression des rsultats

Dans le cas du dosage en bloc des ions calcium et magnsium, les rsultats sont exprims en degrs
hydrotimtriques.
En France le degr hydrotimtrique (D.H.) quivaut 10 mg de CaCO3 par litre d'eau. Dans les autres
pays, la dfinition du D.H. est lgrement diffrente.
Pour effectuer ce calcul, il faut assimiler les ions Mg2+ + Ca2+ des ions Ca2+ que l'on transforme
ensuite en mg de CaCO3.
DOSAGE DU CALCIUM (pH = 12-13)
Pour que le magnsium n'interfre pas, on le fait prcipiter sous forme d'hydroxyde.
Dans un erlen introduire,
! 10 ml de l'chantillon d'eau (ou 20 ml ou 50 ml),
! 2 ml (prouvette gradue) de soude 2N,
! une pince d'indicateur au calcon.
S'il y a des ions calcium, l'chantillon prend une couleur rouge lie de vin.
Titrer avec la solution d'E.D.T.A. jusqu'au virage de l'indicateur (rouge bleu).
Calculer la teneur en calcium (exprime en mg.l-1).
DETERMINATION DE LA TENEUR EN MAGNESIUM.
Connaissant le titre hydrotimtrique total et la teneur en calcium, calculer la teneur en magnsium
(exprime en mg.l-1).
5.1.6.4.

Dtermination du degr permanent

Le degr permanent correspond aux ions Ca2+ et Mg2+ restant en solution aprs bullition prolonge de
l'eau. Cette opration a pour rsultat de prcipiter une partie des ions Ca2+ et Mg2+ par suite de la
dissociation des bicarbonates.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


CaCO3 + CO2 + H2O
insol.

Ca(HCO3)2
sol.
Mg(HCO3)2
sol.

60

MgCO3 + CO2 + H2O


insol.

A 25 C, les produits de solubilit des carbonates de calcium et de magnsium sont respectivement de


5.10-9 et 1.10-5.
MODE OPERATOIRE.
Dans un ballon surmont d'un rfrigrant, porter bullition pendant 10 mn une prise d'essai de 10, 20.
ou 50 cm3. Refroidir. Filtrer s'il y lieu et dterminer le degr hydrotimtrique suivant les indications
du paragraphe 5.1.6.3.

5.2.

DTERMINATION DE L'ALCALINIT4

5.2.1.

Modes d'expression

Les alcalinits sont habituellement values en degrs T. A. et T. A. C. dont nous avons donn la
dfinition dans le cours.
A propos des corrosions, nous devons signaler le rle de la soude caustique dans l'eau de chaudire.
Pour cette raison, les Allemands ont dfini une autre unit, le natronzahl ou nombre de soude et lui ont
fix des limites pour les diffrents types de chaudires.
Le nombre de soude se calcule ainsi:
mg/l Na 2 CO 3
nombre de soude = mg/l NaOH +
4,5
ou 11,3 T. A. - 3,3 T. A. C., ou, si l'on veut tenir compte du sulfite et des phosphates:
NaOH +

Na 2 CO 3 Na 2SO 3 Na 3 PO 4 12 Aq.
+
+
4,5
4,5
1,5

tous ces lments tant exprims en mg/l.


En gnral, on se contente du premier mode d'expression de calcul. Le nombre de soude ne prsente
d'intrt que pour l'eau de chaudire.
5.2.2.

Mthode classique

5.2.2.1.

Ractifs

Acide sulfurique N/10


Mthylorange
Phnolphtaline, solution hydroalcoolique

CHIMIE INDUSTRIELLE

07/01/2005

(4,9 g/l)
1
1

1re Edition

Tome TP

Dr. Gilles OLIVE


5.2.2.2.

61

Mode opratoire

A 100 ml d'eau, ajouter 2 gouttes de phtaline, puis la quantit de H2SO4 exactement ncessaire pour
dcolorer.
Aprs introduction d'une goutte de mthylorange, continuer l'addition d'acide jusqu'au virage du jaune
au ros orang. Si nous appelons n le nombre de millilitres d'acide ncessaires pour dcolorer la
phtaline, N le nombre de millilitres jusqu'au virage du mthylorange, les degrs d'alcalinit sont
donns par les formules:
T. A. = 5n
T. A. C. = 5N
5.2.2.3.

Calculs

Si on nglige les phosphates contenus seulement en petite quantit dans l'eau de chaudire et certaines
eaux pures, les cas suivants peuvent se prsenter.
1 T. A. = 0: absence d'alcalis caustiques et de carbonates.
a) T. A. C. < 0,25: absence de bicarbonates (eau distille, condense ou dminralise).
b) T. A. C. > 0,25: l'eau contient des bicarbonates (eau naturelle ou adoucie)
mg/l NaHCO3 = 16,8 T. A. C.
2 T. A. > 0
T. A. C.
: l'eau renferme des carbonates et des bicarbonates:
2
mg/l Na2CO3 = 21,2 T. A.
mg/l NaHCO3 = 16,8 (T. A. C. - 2 T. A.)

a) T. A. <

T. A. C.
: l'eau renferme seulement des carbonates:
2
mg/l Na2CO3 = 21,2 T. A.
= 10,6 T. A. C.

b) T. A. =

T. A. C.
: l'eau contient des carbonates neutres et des alcalis caustiques. C'est
2
le cas des eaux de chaudires par suite de la dissociation du carbonate:
mg/l NaOH = 8 (2 T. A. - T. A. C.)
mg/l Na2CO3 = 21,2 (T. A. C. - T. A.)
c) T. A. >

Bien qu'elle soit peu prcise, cette mthode est suffisante pour les contrles courants, notamment ceux
effectus l'atelier mme. En effet, l'eau contient souvent des produits plus ou moins alcalins, tels que
silicates, sulfites, aluminates, bases organiques, dont la prsence peut tre la cause d'erreurs
importantes, notamment sur la teneur en soude libre.
5.2.3.

Mthode de Winckler

Cette mthode est utilise chaque fois qu'il est ncessaire de connatre avec prcision les teneurs en
soude caustique.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP

62

Dr. Gilles OLIVE


5.2.3.1.

Principe

Elimination des sels d'acides faibles sous forme de sels de baryum insolubles. Les bases caustiques
subsistent seules sous forme de baryte.
5.2.3.2.

Ractifs

Chlorure de baryum solution


Acide
Phnolphtaline
5.2.3.3.

10 %
N/10

Mode opratoire

Prlever un chantillon de 100 ml. Ajouter 10 ml BaCl2 10 % et quelques gouttes de phnolphtaline.


Si la teinte rose disparat ou n'apparat pas, on peut conclure l'absence de soude libre.
Dans le cas contraire, le nombre n de millilitres d'acide N/10 ncessaires donne la proportion de soude
dans l'eau:
T. A. NaOH = 5n
mg/l NaOH libre = 40n
L'alcalinit carbonate est calcule par la formule:
T. A. C. carbonate = 2 (T. A. - T. A. NaOH)
mg/l Na2CO3 = 21,2 (T. A. - T. A. NaOH)
5.3.

DTERMINATION DU pH4

Le pH peut tre dtermin de diffrentes manires selon la prcision cherche. Pour des mesures
sommaires, les indicateurs colors sont couramment utiliss. Prsents sous forme de solutions, la
prcision qu'ils permettent d'esprer est 0,2 mais, sous forme de papier color, on peut difficilement
attendre mieux que 0,5. Aux pH suprieurs 10, ces mthodes sont peu rigoureuses.
Il existe dans le commerce de nombreux types d'appareils fixes ou portatifs, pH-mtres lectrodes de
verre permettant des contrles trs prcis (jusqu' 0,01) condition de ne pas ngliger les corrections
de temprature.
Mthodes AFNOR
NF T 90 006 Mesure colorimtrique du pH.
NF T 90 008 Mesure lectromtrique du pH avec l'lectrode de verre.

5.4.

DTERMINATION DE LA SALINIT4

Quatre mthodes sont utilises pour dterminer la salinit des eaux:


! mesure de la densit,
! dosage des chlorures,
! mesure de la rsistivit,
! dtermination de l'extrait sec.

CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
5.4.1.

63

Dr. Gilles OLIVE


Mesure de la densit

A une mme temprature, la salinit d'une eau est peu prs proportionnelle sa densit. Une lecture
de temprature et une lecture de densit (gnralement en degrs Baum) suffisent pour connatre
approximativement la salinit.
Il existe dans le commerce des instruments appels pacomtres qui sont des densimtres dans lesquels
est inclus un thermomtre. Des graphiques donnent la correction de temprature effectuer et la
correspondance degrs Baum-salinit. Nous les rsumons ci-dessous:
Temprature Correction d B
15
0
19
+ 0,10
22
+ 0,20
25
+ 0,29
28
+ 0,40
30
+ 0,50
38
+ 0,90
49
+1

d B
0,14
0,28
0,57
1
1,2

Salinit g/l
1
2
4
6,9
8,3

La prcision de cette mthode est mdiocre, surtout lorsque la densit est mesure une temprature
loigne de 15 C.
5.4.2.

Dosage des chlorures

5.4.2.1.

Principe

Quand une chaudire est alimente avec une eau de qualit constante, le rapport chlorure/extrait sec est
constant. Il sufft de dterminer ce rapport de temps en temps. Les chlorures sont doss par la mthode
volumtrique au nitrate d'argent:
! soit en prsence d'un indicateur color (chromate de potassium) ;
! soit par potentiomtrie.
5.4.2.2.

Ractifs

Nitrate d'argent. Il est commode d'utiliser une solution dont 1 ml correspond 1 mg Cl.
Chromate de potassium 10 %.
5.4.2.3.

Mode opratoire

Prlever 25 ou 50 ml d'eau. Neutraliser par HNO3 10 %. Complter 100 ml environ. Ajouter 1 ml de


chromate. Titrer par AgNO3 jusqu' coloration rouge brun.
Au lieu de dterminer une coloration, il est commode de suivre la raction avec un potentiomtre
spcialement quip pour cet usage. La fin du dosage est indique par la diffrence maximale de
potentiel correspondant l'addition de 2 gouttes de nitrate.
Soit N le nombre de ml AgNO3 utiliss par l'une ou l'autre mthode.
CHIMIE INDUSTRIELLE

07/01/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
64
Dans les deux cas, un essai blanc sur l'eau distille est indispensable. Soient n ml AgNO3 consomms
dans l'essai blanc.
5.4.2.4.

Calculs

Si 50 ml d'eau ont t prlevs


Cl (mg/l) = 20 (N - n)
Si f dsigne le rapport

extrait sec
chlorures
Salinit (mg/l) = 20 (N - n)f

Cette mthode, plus prcise que la prcdente, prsente en outre l'avantage de renseigner sur la
proportion de chlorures dont l'accumulation peut provoquer des corrosions.
Cependant, le rapport extrait sec/chlorures peut subir des variations accidentelles dues la conduite de
l'puration: variation de l'alcalinit, de la teneur en phosphate ou, dans le cas d'adoucissement,
introduction de chlorure de sodium provenant d'un mauvais rinage des purateurs.
La prsence de polyphosphates non hydrolyss est une cause d'erreur, qu'une bullition pralable de 15
mn avec une quantit d'acide nitrique 10 %, suffisante pour tre en milieu nettement acide, permet
d'liminer.
5.4.3.

Mesure de rsistivit

Pour dterminer la salinit d'une eau faiblement minralise (distille ou dminralise), la mesure de
la rsistivit lectrique est une mthode simple et rapide donnant des rsultats d'une prcision
suffisante.
Lorsque cette dtermination est utilise pour l'exploitation d'une chaudire haute pression, les purges
sont rgles directement en fonction d'une rsistivit minimale tenir, sans passer par la salinit
exprime en milligrammes par litre.
5.4.4.

Dtermination extrait sec

Evaporer sans faire bouillir dans une capsule de platine une certaine quantit d'eau, scher le rsidu
(110-120) et peser.

5.5.

DOSAGE DES PHOSPHATES1

Les teneurs en phosphates solubles s'expriment habituellement en milligrammes de P2O5 par litre.
Les phosphates provenant essentiellement de ractifs introduits en cours d'opration, il n'y a pas lieu de
les rechercher dans les eaux naturelles. Leur dosage dans l'eau pure prsente peu d'intrt pratique.
Par contre, il faut vrifier souvent la teneur en P2O5 de l'eau de chaudire.
Une partie de P2O5 correspond :
5,05 de Na2HPO4 12 Aq.
et
5,35 de Na3PO4 12 Aq.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.5.1.

Dr. Gilles OLIVE


Mthode colorimtrique au bleu de molybdne

5.5.1.1.

65

Principe

La rduction de l'acide molybdique en prsence de phosphates donne une solution bleue d'autant plus
fonce que la concentration en P2O5 est plus leve.
Propose pour la premire fois par DENIGES, cette mthode a t modifie par de nombreux chercheurs.
Les modifications ont port:
! sur les rducteurs employs: tain (SPLITTGERBER), chlorure stanneux, thiosulfate,
hydroquinone, acide 1-2-3 aminophtosulfonique, benzidine,
! sur la comparaison des teintes obtenues, teintes souvent altres par la coloration brune de
l'eau de chaudire et par la raction colore de la silice sur le molybdate (jaune-vert).
De toutes les mthodes proposes jusqu' ce jour, la plus prcise est incontestablement celle qui utilise
le chlorure stanneux comme rducteur. Elle a t mise au point par HUBIE et CHOSSAT. Nous
l'indiquons, ci-dessous avec quelques perfectionnements apports par DESIRE.
5.5.1.2.
!
!
!
!

photocolorimtre muni d'un cran rouge 610 m, dfaut, comparateur ou srie de tubes
talons,
pipettes de 10 et 1 ml gradues en diximes,
ballons jaugs de 100 ml,
tubes essais.
5.5.1.3.

!
!
!
!

Appareillage

Ractifs

solution sulfomolybdique: 756 mg de molybdate d'ammonium Mo7O24(NH4)6 4 H2O dans


100 ml H2SO4 3 N ;
solution tampon de chlorure stanneux: 10 g SnCl2 2 H2O dans 25 ml de HCl densit 1,18 ;
cette solution se conserve un mois ;
solution dilue de chlorure stanneux: 0,5 ml de solution tampon dans 100 ml HCl normal ;
cette solution doit tre renouvele chaque jour ;
solution de phnolphtaline 1 % dans l'alcool 70 .
5.5.1.4.

Mode opratoire

Introduire 10 ml d'eau analyser dans un ballon de 100 ml. Acidifier avec HCl N/10 jusqu'
dcoloration de la phnolphtaline. Complter 100 ml avec de l'eau distille.
Prlever 10 ml de la dilution et les placer dans un tube essais.
Ajouter 1 ml de solution sulfomolybdique, puis 1 ml de solution dilue de SnCl2. Homogniser et
attendre 90 30 mn Effectuer la mesure colorimtrique.
Si la teneur en P2O5 est infrieure 5 mg/l, utiliser 10 ml d'eau analyser non dilue et diviser le
rsultat obtenu par 10.
Les solutions de rfrence se prparent partir d'une solution de phosphate monoammonique 5 mg/l
de P2O5 (8,098 mg de NH4H2PO4 par litre).
Par dilution, on prpare des solutions talons 0,1, 0,5, 1, 2, 3, 4, 5 mg/l de P2O5.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
66
10 ml de ces solutions, traites comme indiqu ci-dessus, donnent l'chelle de teintes correspondant
des eaux de chaudires titrant 1, 5, 10, 20, 30, 40, 50 mg/l de P2O5.
Quand on dispose d'un photocolorimtre, la courbe talon de l'appareil est tablie une fois pour toutes.
Dans le cas contraire, il faut prparer une srie complte de tubes talons chaque mesure.
5.5.2.

Mthode acidimtrique

5.5.2.1.

Principe

Le phosphate monosodique est neutre au mthylorange, le phosphate disodique est neutre la


phnolphtaline. On peut donc, en l'absence d'acides faibles (CO2, acides organiques, silice), titrer
P2O5 en mesurant la quantit de soude ncessaire pour passer du stade monosodique au stade
disodique.
L'emploi du pH-mtre lectrode de verre se gnralisant de plus en plus, il est avantageux d'effectuer
une telle titration au moyen de cet appareil, sans l'aide d'indicateurs colors. La titration revient alors
dterminer la quantit de soude ncessaire pour passer de pH 4,6 (monosodique) pH 8,8 (disodique).
5.5.2.2.
!
!
!
!

Ractifs

Acide sulfurique 5 %
Soude titre N/25
Mthylorange
Phnolphtaline
5.5.2.3.

Mode opratoire

Dans un erlenmeyer de 250 ml, on introduit successivement 100 ml d'eau, 1 goutte de mthylorange et
la quantit d'acide sulfurique pour faire virer nettement au ros. On fait bouillir 5 mn pour chasser CO2
et on laisse refroidir.
On fait couler goutte goutte la soude jusqu' obtention de la teinte sensible jaune-orang, on ajoute 2
gouttes de phtaline et on titre par la soude jusqu' virage au ros.
5.5.2.4.

Rsultats

Soit N le nombre de millilitres de soude ncessaires pour passer du virage du mthylorange celui de
la phtaline.
La teneur en milligrammes par litre de P2O5 est N x 28,4.
Cette titration est plus longue et moins prcise que celle par l'urane, les rsultats tant influencs par la
silice et les matires organiques. Toutefois, elle est simple, ncessite peu d'appareillage et des ractifs
courants.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

67

DOSAGE DES POLYPHOSPHATES1

5.6.

5.6.1.

Principe

Le dosage des polyphosphates contenus dans les circuits d'eau est effectu par colorimtrie. Mais cette
mthode ne peut tre applique qu'aprs hydrolyse du polyphosphate en orthophosphate.
Par ailleurs, l'eau du circuit peut contenir du polyphosphate dj transform partiellement en
orthophosphate (cas du circuit ferm).
Dans ces conditions, il est intressant de connatre:
! les orthophosphates dans l'eau du circuit,
! les phosphates totaux, dtermins aprs hydrolyse de la prise d'essai, d'o on dduit la teneur
en polyphosphates.
Dans les deux cas, la mthode colorimtrique est la mme.
5.6.2.

Prcaution essentielle

Il importe que tout le matriel utilis n'ait pas t lav avec un dtersif contenant du phosphate.
5.6.3.

Hydrolyse du polyphosphate

Mesurer dans une fiole jauge 100 ml d'eau.


Placer cette eau dans un erlenmeyer de 300 ml.
Rincer le ballon l'eau distille, joindre cette eau de rinage au contenu de l'erlenmeyer.
Ajouter 3 gouttes d'acide chlorhydrique pur (d = 1,19).
Faire bouillir 2 h. Si l'vaporation est trop importante, ajouter un peu d'eau distille ou dminralise.
Laisser refroidir.
Neutraliser la phtaline par NaOH environ N/10.
Dcolorer par une goutte d'HCl environ N/10.
Transvaser dans le ballon. Complter 100 ml avec de l'eau distille.
5.6.4.

Dosage par la mthode colorimtrique au bleu de molybdne

Le dosage sur la solution hydrolyse ou non est identique celui du P2O5 dans les eaux de chaudires.
Nous allons nanmoins le rappeler, afin d'viter au lecteur de s'y reporter.
5.6.4.1.
!
!
!
!

Appareillage

photocolorimtre muni d'un cran rouge 610 m ou, dfaut, comparateur ou srie de tubes
talons,
pipettes de 10 et 1 ml gradues en diximes,
ballons jaugs de 100 ml,
tubes essais.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.6.4.2.

68

Ractifs

solution sulfomolybdique: 756 mg de molybdate d'ammonium Mo7O24(NH4)6 4 H2O dans


100 ml H2SO4 3 N ;
solution tampon de chlorure stanneux: 10 g SnCl2 2 H20 dans 25 ml de HCl densit 1,18.
Cette solution se conserve un mois ;
solution dilue de chlorure stanneux: 0,5 ml de solution tampon dans 100 ml HC1 normal.
Cette solution doit tre renouvele chaque jour ;
solution de phnolphtaline 1 % dans l'alcool 70.

!
!
!

5.6.4.3.

Mode opratoire

Prlever 10 ml de la solution obtenue aprs hydrolyse.


Ajouter 1 ml de solution sulfomolybdique et 1 ml de solution dilue de SnCl2.
Homogniser.
Attendre 90. mn et effectuer la mesure colorimtrique 610 m.
Pour l'talonnage du colorimtre ou pour comparaison directe, prparer une srie de solutions talons
partir d'une solution de phosphate monoammonique 8,098 mg NH4H2PO4 par litre (5 mg/l P2O5).
Si un photocolorimtre est utilis, on tablit une fois pour toutes la courbe d'talonnage.
Si l'on utilise une chelle colore, il faut prparer la gamme-talon en mme temps que les chantillons
examiner. DESIRE donne des mlanges de solutions bichromate de potassium-sulfate de cuivre, dont
les teintes sont assez stables et correspondent celles dveloppes au cours du dosage pour des
concentrations en P2O5 dtermines.
Si la teneur en P2O5 dpasse 5 mg/l, diluer l'eau avant dosage dans une proportion convenable ou
utiliser la mthode au vanadomolybdate ci-aprs.
5.6.5.

Mthode AFNOR

NF T 90 023 Dosage spectrophotomtrique des orthophosphates et des polyphosphates.


Cette mthode est galement base sur la colorimtrie, mais, dans ce cas, il s'agit du complexe jaune
form par les ions phosphoriques avec des ions vanadiques et molybdiques.
Moins sensible que la prcdente, elle est nanmoins satisfaisante dans la plupart des cas.

5.7.

DOSAGE DE L'OXYGENE1

5.7.1.

Mthode polarographique

Cette mthode, de plus en plus utilise, est rapide et d'une grande simplicit. Son seul inconvnient est
de ncessiter un appareil relativement coteux.
5.7.1.1.

Principe

L'oxygne contenu dans l'chantillon diffuse travers une membrane de polythylne ou


ttrafluorothylne permable l'oxygne mais impermable l'eau et aux ions. Il est rduit la
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
69
cathode (or, argent ou carbone) ; cette rduction provoque un courant proportionnel la pression
partielle d'oxygne dans l'chantillon. Les ractions suivantes ont lieu:
O2 + 2 H2O + 4e4 Ag + 4 Cl5.7.1.2.

4 OH4 AgCl + 4e-

(raction la cathode)
(raction l'anode d'argent).

Appareillage

Les appareils existant dans le commerce comportent:


! un dtecteur quip par exemple d'une cathode en or et d'une anode en argent baignant dans
un gel de chlorure de potassium, spares du milieu par une membrane en matire plastique ;
! un amplificateur qui mesure le niveau du courant produit par le dtecteur, l'amplifie et
transmet le signal un indicateur ou un enregistreur.
5.7.1.3.

Mode opratoire

Suivre les indications du constructeur.


5.7.1.4.

Rsultats

La lecture de la teneur en oxygne est lue directement sur l'appareil en milligrammes d'O2 par litre, ou
en millimtres de mercure de pression partielle d'oxygne dans l'chantillon, ou en proportion
d'oxygne par rapport la saturation la temprature de l'essai.
5.7.2.

Mthode de Winckler

C'est la seule mthode chimique utilise pour le dosage de l'oxygne dissous.


5.7.2.1.

Principe

L'oxygne oxyde les sels manganeux en sels manganiques. Ces derniers peuvent tre titrs
indirectement par le thiosulfate.
5.7.2.2.

Prise de l'chantillon

Tous les auteurs insistent sur les soins qu'il faut apporter cette opration, sous peine d'avoir des
rsultats errons.
L'eau prleve une temprature maximale de 30 C est introduite par un tube de caoutchouc au fond
d'un flacon de 250 300 ml bouch l'meri, ou dans un flacon spcial pour dosage d'oxygne.
On laisse dborder un grand volume avant de prendre l'chantillon. Quand il n'y a plus de bulles
entranes, on fait encore circuler un volume d'eau gal 10 fois celui du flacon, on retire le
caoutchouc avec prcaution et on bouche le flacon en prenant soin de n'emprisonner aucune bulle d'air.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.7.2.3.

!
!
!
!

70

Ractifs

Chlorure manganeux: 10 g MnCl2 4 H2O dans 25 ml eau distille.


Soude caustique iode: 33 g NaOH, 100 ml eau distille, 10g KI.
Thiosulfate de sodium N/100.
Empois d'amidon frachement prpar.
5.7.2.4.

Mode opratoire

On introduit au fond du flacon l'aide de longues pipettes 2 3 ml de chlorure manganeux et le mme


volume de soude iode.
L'hydrate manganeux prcipite et, au contact d'oxygne, se transforme en hydrate manganique brun.
On agite et on laisse dposer l'abri de la lumire pendant 30 mn.
Plusieurs procds sont proposs:
5.7.2.4.1.

colorimtrique

la teinte brune du prcipit est compare une chelle de teintes d'o l'on dduit immdiatement la
teneur en oxygne ;
5.7.2.4.2.

volumtrique

on enlve un peu de la solution clarifie par dcantation, ajoute 5 ml HCl concentr (ou d'acide
phosphorique), agite, transvase la solution redevenue limpide.
On ajoute 2 3 ml d'empois d'amidon et titre par le thiosulfate jusqu' disparition de la coloration
bleue.
1 ml thiosulfate N/100 = 0,08 mg O.
En prsence de sulfites (cas du dgazage chimique), la mthode de Winckler doit tre modifie.
On transforme l'hydrate manganeux en carbonate par addition de bicarbonate de sodium.
On filtre le prcipit sur creuset de Gooch, lave et redissout par HCl.
On termine le dosage comme prcdemment. Cette mthode donnerait des rsultats convenables pour
des teneurs en oxygne de 0,05 0,5 mg/l.
D'autres mthodes ont t proposes, en particulier, le dgazage sous vide, l'oxygne dgaz tant
absorb par le ractif de WINCKLER.

5.7.3.

O2 dissous - Mthodes utilises au CEBEDEAU5

1) Mthode de Wincler - suivant la norme NBN 390 (voir plus loin).


2) Mthode polarographique - qui permet d'obtenir directement par simple lecture, la quantit
d'oxygne de l'eau en mg/l. L'appareil que l'on peut utiliser sur le terrain comporte une
lectrode de mesure goutte de mercure et il est quip d'une compensation thermique
automatique. Il est ainsi possible, avec un peu d'habitude, de doser 60 chantillons en 20
minutes - l'erreur maximum de l'instrument est de 0,15 ppm mais les carts par rapport la
mthode de Winckler ne dpassent en gnral pas 0,10 ppm.
3) Mthode par cellule galvanique. Cette mthode prconise par Mancy-Westgarth (I.W.
Poll. Cent. Fed. 34 - Oct. 62, 1037) et qui permet une mesure continue de l'oxygne par
cellule galvanique membrane en polymre de fluorthylne propylne permable
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


71
seulement l'oxygne. Cette mthode est en particulier employe pour des essais en
continu. La cellule galvanique est alors couple avec un enregistreur.
5.7.3.1.

Mthodes normalises

5.7.3.1.1.

Norme belge: NBN 390. Mthode de Winckler.

Principe: O2 dissous ragit quantitativement avec l'hydroxyde manganeux et donne du bioxyde de Mn


hydrat qui, en milieu acide, libre l'iode d'un iodure. Il suffit donc de titrer l'iode par du thiosulfate
sodique en prsence d'amidon.
Substances gnantes: Les nitrites dtruits par l'azoture de Na (NaN3).
5.7.3.1.1.1.

Mode opratoire

Remplir compltement avec l'eau analyser 1 flacon de Winckler.


Introduire du sulfate manganeux (1 ml) puis une solution contenant KI, KOH et NaN3 (2 ml).
Boucher le flacon, bien mlanger.
Laisser reposer.
Ajouter H2SO4.
Homogniser.
Titrer l'iode par Na2S2O3 N/40. Vers la fin du titrage, ajouter 1 2 ml de la solution d'empois
d'amidon.
5.7.3.1.1.2.

Ractions

MnSO4 + 2 KOH = Mn(OH)2 + K2SO4


Mn(OH)2 + O2 = MnO2 H2O
MnO2 H2O + 2 KI + 2 H2SO4 = MnSO4 + K2SO4 + 3 H2O + I2
2 NaN3 + H2SO4 = 2 HN3 + Na2SO4
HNO2 + HN3 = N2 + N2O + H2O
I2 + 2 Na2S2O3 = 2 NaI + Na2S4O6.
Dtermination du rsultat:
n = nb de ml de sol. titre de Na2S2O3,
t = titre en Oxygne de la sol de Na2S2O3,
V = volume de la prise d'essai,
V - 3 = volume corrig pour tenir compte de la perte provoque par addition des ractifs.
n x t x 1000
V -3
5.7.3.1.2.

Suisse: SNV 81506.

Addition de chlorure de Mn et de soude caustique iodure, ajouter HCl ou un mlange d'acides


phosphorique et chlorhydrique et titrer.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.7.3.1.3.

72

Grande Bretagne: BS 2690 (1956).

3 mthodes:
1) addition de sulfate de Mn, KI, KOH et H2SO4. Elimination de MnO2 par KMnO4 dont on dtruit
l'excs par de l'oxalate potassique. Titrage de l'iode libr par Na2S2O3 en prsence d'empois d'amidon.
2) Mme mthode mais lectrotitrage.
a) l'aide d'un galvanomtre jusqu' ce que l'aiguille n'accuse plus aucune dflection (dead stop
end point method).
b) en cherchant le point d'inflexion de la courbe des V en fonction des incrments de
thiosulfate.
3) Mthode microgazomtrique. L'O2 est dos comme gaz et absorb sur du pyrogallol. BS 1427
(1962).
Pour les faibles quantits d'O2 dissous (ex. 0,007 ppm). Comparaison de teintes produites par l'indigocarmin rduit avec du glucose. Les colorations passent de l'orange au rouge-violet et au bleu avec
l'accroissement de la quantit d'oxygne.
5.7.3.1.4.
Normes internationales applicables l'eau de boisson (Organisation mondiale
de la sant, Genve).

Mthode de Winckler avec addition de NaN3 comme dans la mthode belge.


5.7.3.1.5.
France: NFT 90.010. Dtermination colorimtrique des faibles teneurs d'O2
libre.

Oxyder par l'O2 dissous de l'hydroxyde manganeux, dcomposer par HCl. Il y a libration de C12 qui
donne une coloration jaune avec une sol. chlorhydrique d'o-tolidine. Comparer la coloration obtenue
avec une gamme talon.
DOSAGE DE LA SILICE1

5.8.

Quelle que soit la mthode utilise, les traitements chaud doivent tre effectus dans des rcipients
non siliceux (platine ou la rigueur alumine), l'eau distille et tous les ractifs doivent tre contrls au
point de vue de leur teneur en silice.
5.8.1.
5.8.1.1.

Mthode colorimtrique
Principe

L'acide molybdique en prsence d'ions siliciques produit une coloration jaune due au complexe silicomolybdique. Cette coloration est de mme ton que celle d'une solution neutre de chromate de
potassium. Son intensit est proportionnelle la quantit d'ions SiO2.
Pour les eaux trs faible teneur en silice (moins de 2 mg/l), il faut, aprs dveloppement de la couleur
silico-molybdique, ajouter une solution d'acide aminonaphtol-sulfonique qui donne une teinte bleue
beaucoup plus intense.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.8.1.2.

!
!
!
!
!
!
!

73

Ractifs

Molybdate d'ammonium pulvris.


Molybdate d'ammonium: solution 100 g/l (conserver dans un flacon en verre borosilicat).
Chromate de potassium: solution 6,30 g/l.
Chromate de potassium: solution 0,63 g/l.
Acide chlorhydrique d = 1,19 au 1/2 (conserver dans un flacon en verre borosilicat).
Silicate de sodium. Solution talon: fondre 3 g de carbonate de sodium avec 0,200 g de silice
pure dans un creuset de platine. Dissoudre dans 200 ml d'eau: 1 ml contient 1 mg de SiO2.
Diluer dix fois si ncessaire, conserver dans un flacon d'bonite.
Acide aminonaphtolsulfonique. Solution: dissoudre 0,5 g d'acide 1-amino-2-naphtol-4sulfonique, dans une solution de 30 g de sulfite acide de sodium dans 200 ml d'eau distille ;
ajouter 1 g de sulfite neutre de sodium et chauffer pour parfaire la solution. Conserver
l'obscurit dans un flacon en verre rsistant aux agents chimiques et renouveler toutes les
deux semaines.
5.8.1.3.

Mode opratoire

5.8.1.3.1.

Teneur en SiO2 suprieure 2 mg/l.

Prendre 2 prouvettes pour colorimtrie.


Verser dans l'une 100 ml d'eau analyser, puis (5,5 g de molybdate d'ammonium pulvris, agiter
jusqu' dissolution de la plus grande partie du sel puis ajouter en agitant 2 ml d'acide chlorhydrique au
1/2. Agiter nouveau jusqu' dissolution complte du molybdate et laisser reposer 5 mn.
Verser dans l'autre prouvette 102 ml d'eau analyser, ajouter goutte goutte la solution de chromate
jusqu' ce que les teintes jaunes prsentent la mme intensit.
Soit n le nombre de millilitres de chromate de potassium:
SiO2 en mg/l = 10 n.
5.8.1.3.2.

Teneur en SiO2 infrieure 2 mg/l.

Dans une prouvette pour colorimtrie, verser 100 ml d'eau analyser. Dans une srie d'prouvettes
semblables, prparer des solutions de teneurs connues en SiO2 partir d'eau distille et de solution
type de silicate.
Ajouter successivement dans chaque prouvette 4 ml de solution de molybdate d'ammonium et 2 ml
d'acide chlorhydrique. Laisser reposer 5 mn et ajouter 4 ml d'acide amino-naphtol sulfonique.
Comparer avec les talons 2 mn aprs l'introduction de ce dernier ractif.
REMARQUES
! La silice peut exister sous deux tats diffrents: tat ionique et tat collodal. Dans la mthode
colorimtrique, la silice collodale chappe au dosage. On peut transformer la silice collodale
en silice ionique par chauffage pralable avec du bicarbonate de sodium. On nglige souvent
la silice collodale qui n'existe gnralement qu'en faible proportion.
! Les eaux renfermant plus de 300 mg/l de silice doivent tre dilues avec une proportion
connue d'eau distille.
! Pour le dosage au chromate, l'eau du tube tmoin doit tre amene, s'il y a lieu, au pH 8,5.
! La mthode l'acide aminonaphtolsulfonique est encore sensible pour 0,05 mg de SiO2 par
litre.
! Si l'eau est trs alcaline, il faut la neutraliser avec HCl en prsence de phnolphtaline car le
pH des solutions molybdiques acidifies doit tre compris entre 1 et 1,2.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
74
! Les eaux troubles doivent tre filtres, les eaux colores agites avec 2 g de charbon actif pur,
puis filtres.
! En prsence de certaines matires rductrices qui font bleuir le ractif molybdique, le dosage
colorimtrique au chromate exige un traitement pralable dcrit dans la norme AFNOR.
! Si l'eau renferme des anions phosphoriques, il faut 5 mn aprs l'addition d'acide
chlorhydrique (et le cas chant 1 mn avant l'addition d'acide aminonaphtolsulfonique),
ajouter 3 ml d'une solution d'acide oxalique 100 g/l.
Dans ce cas, la coloration due au phosphore est ngligeable jusqu' 5 parties de phosphore
pour une partie de silicium.
5.8.2.

Mthode pondrale

5.8.2.1.

Principe

La silice est insolubilise par vaporation sec en prsence d'acide chlorhydrique.


5.8.2.2.
!
!
!

Ractifs

acide chlorhydrique d = 1,19 dilu 1/20 ;


acide fluorhydrique d = 1,14 ;
acide sulfurique d = 1,84 au 1/2.
5.8.2.3.

Mode opratoire

Acidifier 1 2 l d'eau avec 10 ml d'acide chlorhydrique, vaporer sec au bain-marie dans une capsule
de platine. Scher l'tuve pendant 1 h 105-110 C. Imbiber avec 5 ml de HCl, puis 50 ml d'eau
chaude, porter l'bullition, filtrer et laver l'eau distille.
Evaporer le filtrat, scher nouveau 120 C, reprendre, filtrer sur un second filtre et laver comme
prcdemment.
Calciner les deux filtres jusqu' poids constant. Evaporer nouveau avec 10 ml d'acide fluorhydrique
et deux gouttes d'acide sulfurique, calciner.
Soit M la perte de poids du creuset aprs traitement l'acide fluorhydrique et seconde calcination,
V le volume en millilitres de la prise d'essai,
la teneur en silice au litre est gale :
1000 M
V
REMARQUES
! La mthode pondrale dose aussi bien la silice collodale que la silice ionique.
! Il faut vrifier l'absence de rsidu fixe (acide fluosilicique) dans l'acide fluorhydrique.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

75

DOSAGE DU MANGANESE5

5.9.

Principe: oxydation de Mn2+, Mn3+ et Mn4+ en Mn7+ ( MnO 4 ).


Ions gnants: Cl- doit tre limin.
Expression des rsultats: en mg Mn/l ou en m.. Mn/l.
5.9.1.1.
Matriel
Bcher de 250 ml.
Matras de 100 ml.
Spectrophotomtre ou photocolorimtre (filtre: 524 m).
5.9.1.2.
Ractifs
HNO3 concentr.
H2SO4
"
H3PO4
"
Eau distille d'appoint: ajouter 1000 ml d'eau distille 10 ml H2SO4 et 1 cristal de KIO4, faire
bouillir et refroidir.
5.9.1.3.

Mode opratoire

100 ml eau.
2 ml H2SO4.
Chauffer jusqu' fumes blanches: limination Cl-.
Lger refroidissement.
+ 5 ml H3PO4: complexion Fe3+.
+ 15 ml HNO3.
Ebullition.
+ 0,5 g KIO4.
Ebullition 3 mn.
Maintenir temprature lgrement infrieure l'bullition pendant 15 mn.
Refroidir.
Porter 100 ml avec de l'eau distille d'appoint.
Mesurer l'absorption par rapport un blanc prpar dans les mmes conditions.
Longueur d'onde: 524 m.
Epaisseur des cuvettes: b = 4,000 cm.
Dans ces conditions le coefficient d'absorption molaire am = 2250 50.
Sensibilit: 0,050 0,010 mg Mn/l.
Remarque: il est prudent pour chaque appareil de mesure de rechercher la longueur d'onde voisine de
524 m correspondant au maximum d'absorption (fonction de la largeur de bande utilise).
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

76

Dr. Gilles OLIVE


5.9.1.4.

Normes Etrangres

5.9.1.4.1.

Pays-Bas: Projet de norme 3130 H 60

Methoden voor de analyse van water in Ketelbedrijf.


Emploi de formadoxime CH2=NOH.
5.9.1.4.2.

Suisse: SNV. 81.502

Mthode de Marshall: oxydation par K2S2O8 en prsence d'AgNO3 et HNO3.


Preuve de Tillmans et Mildner: oxydation par KIO4.
5.9.1.4.3.
Normes Internationales applicables l'eau de boisson (Organisation mondiale
de la sant: Genve)

Mthode au persulfate: les composs manganeux solubles oxyds par les persulfates en prsence de
nitrate d'argent donnent des permanganates.
La coloration ainsi obtenue est compare avec celles de solutions tmoins dans des tubes de Nessler.

5.10.

DOSAGE DU FER5

5.10.1.

Dosage des ions ferreux et ferriques

Voici pour quelques ractifs, les valeurs des coefficients d'absorption molaire (am) des complexes
colors du Fe.
Ractif
acide thioglycolique
1.2 dihydroxybenzne 3.5 sulfonate de Na
KSCN
' dipyridyl
o.phnanthroline

3850
6150
7400
8850
12150

Des trois derniers ractifs les plus sensibles, o.phnanthroline est pour certaines eaux le moins prcis,
les rsultats tant entachs d'erreurs par dfaut de 5 10 %.
5.10.1.1.

KSCN

Principe: Fe3+ donne, en milieu acide, en prsence de SCN- des complexes thiocyans rouges. Le
mcanisme de cette raction n'est pas entirement lucid: la nature et la concentration en acide, la
concentration en KSCN, le temps de raction influencent l'intensit de la coloration et la stabilit du
complexe color. Il est donc important de travailler toujours clans les mmes conditions opratoires.
La mthode renseigne ci-aprs est prcise et aise.
Ions gnants:
1) qui complexent Fe3+: F-, PO43-, beaucoup de Cl-.
2) qui donnent des complexes colors avec SCN-: Cu2+, Co2+, Bi3+, ...
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
3+
3) qui rduisent Fe ou oxydent SCN-: tels NO2-, ...

77

Expression des rsultats: en mg Fe/l ou en m.. Fe/l.


5.10.1.1.1.

Matriel

Erlenmeyer de 300 ml.


Matras de 100 ml.
2 pipettes de 3 ml.
Spectrophotomtre ou photocolorimtre (filtre: 475 m).
5.10.1.1.2.

Ractifs

HNO3 concentr.
KSCN 33 g dans 100 ml eau distille.
5.10.1.1.3.

Mode opratoire

100 ml eau.
+ 3 ml HNO3.
Ebullition 10 mn.
Refroidir.
+ 3 ml KSCN.
Porter 100 ml.
Mesurer l'absorption (A) aprs 5 mn par rapport un blanc prpar dans les mmes conditions:
Longueur d'onde: 475 m.
Epaisseur des cuvettes
b = 4,000 cm pour 0,01 < c < 2,00 mg/l.
b = 1,000 cm pour 2,00 < c < 5,00 mg/l.
Dans ces conditions le coefficient d'absorption molaire am = 7400.
5.10.1.1.4.

Dtermination des rsultats:

Soit tablir un graphique: A en fonction de c.


Soit calculer c, la loi de Beer-Lambert tant vrifie, A et am tant connus
A = a m . b . cm
o cm reprsente la concentration molaire en Fe.
Sensibilit: 0,010 0,002 mg Fe/l.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

78

Dr. Gilles OLIVE


5.10.1.2.

' dipyridyl

Principe: ractif des ions ferreux: formation d'un complexe rouge de formule [(C10H8N2)3 Fe] X2. Les
ions ferriques ne ragissent pas.
Ions gnants: PO43- concentration 10 fois suprieure Fe.
F- concentration 250 fois suprieure Fe.
Expression des rsultats: en mg Fe/l o m.. Fe/l.
5.10.1.2.1.

Matriel

Erlenmeyer de 300 ml.


Matras de 100 ml.
2 pipettes de 1 ml.
1 pipette de 10 ml gradue en ml.
Spectrophotomtre ou photocolorimtre (filtre: 520 m).
5.10.1.2.2.

Ractifs

HCl 1,9.
Chlorhydrate d'hydroxylamine: 10 g dans 100 ml HCl N/10
NH4OH 1.3.
5.10.1.2.3.

Mode opratoire

100 ml eau.
+ 1 ml HCl.
+ 1 ml chlorhydrate d'hydroxylamine.
Porter bullition.
Refroidir.
+ x ml ' dipyridyl: 1 ml permet de doser au max. 0.12 mg Fe dans la prise.
Ajuster le pH entre 6 et 7 par NH4OH 1.3 (correspond au max. d'absorption).
Porter 100 ml.
Mesurer l'absorption (A) par rapport un blanc prpar dans les mmes conditions:
Longueur d'onde 520 m.
Epaisseur des cuvettes:
b = 4,000 cm pour 0,005 < c < 1,00 mg Fe/l.
b = 1,000 cm pour 1,00 < c < 4,00 mg Fe/l.
Dans ces conditions le coefficient d'absorption molaire am = 8850.
Sensibilit: 0,005 0,001 mg Fe/l.
Avantages de ce ractif:
! L'absorption est constante au moins pendant 24 heures.
! L'absorption est indpendante dans de larges proportions des concentrations en ractifs.
! Reproductibilit excellente.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

79

Remarque: ' dipyridyl permet de doser Fe2+ l'exclusion de Fe3+: il suffit de ne pas ajouter de
rducteur au cours du traitement de l'chantillon. La diffrence entre Fe total et Fe2+ donnera Fe3+.
5.10.2.

Fer complex

Le fer complex dans les eaux l'est gnralement sous forme organique. Son dosage ncessite la
destruction des dites substances organiques.
Expression des rsultats: en mg Fe/l ou m.. Fe/l.
5.10.2.1. Matriel
Creuset de Pt de 50 ml environ.
Matras de 50 ml.
3 pipettes de 3 ml.
Spectrophotomtre ou photocolorimtre (filtre: 475 ou 520 m).
5.10.2.2.

Ractifs

HNO3 concentr.
KSCN 33 % ou
' dipyridyl 0,1 % dans HC1 0,1 N.
Chlorhydrate d'hydroxylamine 10 %.
NH4OH 1,3.
5.10.2.3.

Mode opratoire

25 ml d'eau sont vapors sec dans le creuset de Pt.


Le rsidu est port au rouge pendant 2 3 minutes.
Lger refroidissement.
+ 3 ml HNO3 concentr ou HC1 suivant le ractif utilis.
Ebullition - refroidissement.
+ 20 ml eau distille.
Soit 3 ml KSCN.
Soit 2 ml chlorhydrate d'hydroxylamine et dose adquate de ' dipyridyl - amener pH
compris entre 6 et 7 l'aide de NH4OH 1.3.
Porter 50 ml.
Mesurer l'absorption aux longueurs d'onde adquates (cf. plus haut).
5.10.3.

Mthodes normalises
5.10.3.1.1.

Norme belge: NBN 616.

Principe de la mthode: Le fer est rduit l'tat ferreux et sa concentration est mesure par l'intensit
de coloration du complexe Fe2+-O-phnanthroIine ou du complexe Fe2+-' dipyridyl.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

80

Le fer peut exister dans l'eau sous diffrentes formes:


! Fer dissous ionique;
! Fer dissous complex: celui-ci ne ragit qu'imparfaitement avec les ractifs du fer ionique; il
faut donc l'amener sous forme ionique.
! Fer dissous vhicul: Fer mtallique en fines particules insolubles; hydrate ferrique: le Fe2+
dissous s'oxyde l'air en hydrate ferrique qui prcipite et donne des collodes.
La mthode permet de doser:
1) Fer total: la mesure colorimtrique se fait sur l'chantillon pralablement vapor sec en
prsence d'eau rgale puis redissous.
2) Fer vhicul: la mesure se fait sur le produit de dcantation de l'chantillon dissous dans
l'eau rgale.
3) Fer dissous total et
4) Fer ionique: les mesures se font sur l'chantillon dcant aprs traitement l'eau rgale
pour le fer dissous total ou directement pour le fer ionique.
5) Fer complex dissous: Fer dissous total - Fer ionique.
6) Fer complex: Fer total - Fer ionique.
La mesure colorimtrique se fait sur l'chantillon color l'O-phnanthroline ou l'' dipyridyl. La
norme prvoit l'utilisation de 2 modes de dtection:
1) Mthode visuelle: comparaison des colorations avec des solutions tmoins dans des tubes
de Nessler.
2) Mthode lectrique: on utilise un spectrophotomtre ou un photomtre filtre donnant
l'absorption ou la transmission 510 m (O-phenanthroline) ou 520 m (' dipyridyl) et
on compare les rsultats avec une courbe talon.
5.10.3.1.2.
Pays-Bas: Projets de Normes: Methoden voor de analyse van water in
ketelbedrijf.

3130 G 60: Mthode au cupferron.


3130 L 60: Mthode l'' dipyridyl: dosage photomtrique.
3130 M 60: Mthode l'' dipyridyl: dosage colorimtrique.
5.10.3.1.3.

Grande-Bretagne: BS 1427 1962.

Dtermination colorimtrique par comparaison avec des colorations standards.


Emploi de ' dipyridyl ou de l'acide thioglycolique pour complexer le Fer.
5.10.3.1.4.

France: NFT 90.017, Mai 59.

Dtermination colorimtrique.
5.10.3.1.5.
Normes internationales applicables l'eau de boisson (Organisation mondiale
de la Sant - Genve).

Mthode l'O-phenanthroline - Comparaison visuelle de l'chantillon color avec des solutions


tmoins dans des tubes de Nessler.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
5.11. DOSAGE DE L'AMMONIAQUE5

81

Selon les teneurs, il faut utiliser des mthodes diffrentes:


1 > 1 mg/l: distillation suivie d'un titrage acidimtrique.
2 < 1 mg/l: ractif de Nessler - mthode absorptiomtrique.
5.11.1.

Mthode par distillation

Principe: NH3 n'est retrouv quantitativement que si l'eau distiller est maintenue un pH voisin de
7,4 l'aide d'un tampon au phosphate, par exemple.
Le distillt est recueilli dans une quantit connue d'acide dont l'excs est ensuite dtermin.
Expression des rsultats: en mg NH4+/l ou en m.. NH4+/l.
5.11.1.1.1.

Matriel

Appareil distiller en verre avec rfrigrant vertical.


Verre pied conique gradu jusqu' 250 ml.
Burette de 50 ml.
Matras jaugs de 25-50 et 500 ml.
Pipette jauge de 50 ml.
5.11.1.1.2.

Ractifs

Solution tampon: 14,3 g KHPO4 + 90,15 g K2HPO4 3 H2O dans 1 L.


H2SO4 0,1 N.
Indicateur de pH: 4,8 - 5,2
vert de bromocrsol 1,2 g.
rouge de mthyle 0,8 g.
porter 1 l dans sol. alcoolique 50 %.
Ponce calcine: pour rgulariser l'bullition.
5.11.1.1.3.

Mode opratoire

Distiller environ 200 ml d'eau distille pour rincer l'appareil.


Introduire dans le ballon 500 ml d'eau examiner,
10 ml tampon,
quelques grains de ponce calcine.
Introduire la pipette dans le verre pied:
50ml H2SO4 0,1 N.
1 5 gouttes d'indicateur.
Faire plonger le bout infrieur du rfrigrant dans l'acide.
Distiller raison de 6 10 ml/min.
Recueillir 200 ml au minimum.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
82
A la fin de l'essai, redescendre le verre pied sous le rfrigrant et augmenter la vitesse de
distillation pour rincer l'appareil. Rincer aussi le bout extrieur du rfrigrant par un jet de pissette.
Titrer par KOH 0,1 N.
Pendant ce temps, distiller 50 ml supplmentaires qui serviront au contrle par Nesslrisation
directe (voir plus loin).
Dtermination des rsultats:
Pour une prise de 500 ml d'eau, si n ml de KOH ont t utiliss, on aura:
0,2 (50 - n) m.. NH4+/l
ou encore
3,6 (50 - n) mg NH4+/l
Remarques:
1) Pour des teneurs de 20 30 mg/l distiller 200 ml. Pour des teneurs de 50 60 mg/l distiller
300 ml.
2) Si le rfrigrant ne se termine pas par un renflement, il y a lieu d'ajouter un dflegmateur
pour rgulariser la pression.
5.11.2.

Mthode de Nessler

Principe:

2 HgI42- + 2 NH3
2 NH3HgI2

2 NH3HgI2 + 2 INH2Hg2I3 + I- + NH4+


suspension collodale.

La difficult consiste travailler dans des conditions rigoureusement identiques pour que les particules
collodales soient de mme grandeur.
Ions gnants: SO32-, S2- Fe.
Substances colores et turbides.
Expression des rsultats: en mg NH4+/l ou en m.. NH4+/l.
5.11.2.1.

Matriel

Matras de 50 ml bouch meri, d'une contenance minimum de 56 ml.


2 pipettes de 2 ml.
Spectrophotomtre ou photocolorimtre: filtre 430 m.
5.11.2.2.

Ractifs

Ils doivent tre prpars l'aide d'eau exempte de NH4+, obtenue, par exemple, de la manire suivante:
ajouter quelques gouttes de brome l'eau distille, laisser reposer une nuit et redistiller.
Sel de Seignette:
tartrate double de Na et K 33 %.
Additionner de 2 ml de ractif de Nessler et laisser reposer 12 h.
Conserver l'abri de la lumire.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


Les 2 ml seront prlevs avec prcaution dans le liquide surnageant le dpt.

83

Nessler:
HgI2 45.5 g.
KI 34,9 g.
Dissoudre dans trs peu d'eau.
Aprs dissolution ajouter 11 g KOH.
Porter 1000 ml.
5.11.2.3.

Mode opratoire

50 ml d'eau.
2 ml sel de Seignette.
2 ml ractif de Nessler.
Attendre 5 min.
Mesurer l'absorption 430 m.
Sensibilit: dpend de la valeur de l'absorption du blanc, c'est--dire de la puret des ractifs et de l'eau
utilise pour les prparer.
Remarques: 430 m, A ~ 0,500 pour 1 mg NH4+/l.
Il est videmment possible d'augmenter la prcision des mesures en travaillant plus courte longueur
d'onde, le maximum d'absorption se trouvant dans l'U.V.
5.11.3.

Mthode utilise au CEBEDEAU

Dtermination de NH4 par le ractif de NESSLER


Rfrence: B. LANGE Kolorimetrische Analyse (1952) 230-231.
Principe: L'ammoniac forme avec le ractif de Nessler, l'iodure mercuro potassique dans une lessive
de soude (Na2CO3), une coloration jaune dont le maximum d'extinction se trouve 390 m. La
raction est trs sensible. On peut encore dterminer 0,02 mg de NH3 par /l. La limite suprieure se
trouve 2 mg/l, pour des concentrations en ammoniaque plus leves se produit facilement un trouble
ou une prcipitation. Les substances donnant de la duret l'eau qui prcipiteraient lors de l'addition
du ractif fortement alcalin sont limines par prtraitement avec de la soude et du carbonate de soude.
Ces mtaux lourds qui gneraient lors du dveloppement de la coloration sont complexs par du
tartrate.
5.11.3.1.

Ractifs:

1 Na2CO3 anhydre
2 NaOH en pastilles
3 tartrate sodico potassique 20
4 ractif de NESSLER (Merck)

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.11.3.2.

84

Appareillage

photomtre Eppendorf.
5.11.3.3.

Mode opratoire

100 ml d'eau (ou eau rsiduaire) sont verss dans une ampoule dcanter avec environ 1 g de Na2CO3
et d'hydroxyde de soude. Si un trouble ou un prcit se produit, on le laisse dposer. De la solution
claire surnageante on pipette 50 ml (pour des teneurs en NH3 plus leve on en prlve une fraction)
dans un jaug de 100 ml; on ajoute 5 ml de tartrate sodico potassique, on agite soigneusement et on
laisse reposer 10 minutes. On ajoute ensuite 2 ml de ractif de Nessler, on agite, on complte, au
volume avec de l'eau bidistille et on mesure le coefficient d'extinction de la solution colore en jaune
par rapport un blanc, 436 m.
E436 m
x 0,66 = mg d' NH 3
d (cm)

Calcul:

Remarques: On peut galement prparer comme suit le ractif de Nessler:


Solution A: 10 g de HgI2
/ 50 ml
8 g de KI
Solution B:

NaOH 20 g/50 ml ( conserver dans des flacons en polythylne).

Avant l'emploi on mlange les deux solutions en proportions quivalentes.


5.11.4.

Mthodes normalises
5.11.4.1.1.

Norme belge: NBN 489.

NBN 489.01: Mthode avec distillation.


Distillation de l'ammoniaque Pn 7,4 puis traitement au ractif de Nessler. La coloration est mesure
visuellement en comparant avec des solutions tmoins en tubes de Nessler ou photolectriquement par
rapport une courbe talon.
Cette mthode est utilise pour les concentration de moins de 0,6 mg/l d'azote ammoniacal ou quand
une interfrence est craindre par traitement direct au ractif de Nessler.

NBN 489.02: Mthode sans distillation.


L'chantillon dbarrass des ions gnants (prcipitation de Ca, Mg, Fe, Al et sulfures par du sulfate de
Zn et un alcali) est trait directement par le ractif de Nessler. Cette mthode est utilise pour des
concentrations en azote ammoniacal de plus de 0,6 mg/l ou quand les interfrences sont faibles.
5.11.4.1.2.

France: NFT 90.015, Nov. 56. Dosage colorimtrique.

5.11.4.1.3.

Grande-Bretagne: RS 2690 (1956), p. 69-72.

Mthode par distillation puis traitement au ractif du Nessler.


CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
Mthode par traitement direct au ractif de Nessler aprs prcipitation des ions gnants.

85

Normes plus rcentes: BS 1427 (1962).

5.12.

DOSAGE DES NITRITES5

Sont retenues les mthodes utilisant les ractifs suivants:


1) ractif de Griess
2) ractif de Lombard.
5.12.1.

Ractif de Griess

Principe:
a) diazotation de l'acide sulfanilique en milieu actique
NO2- + H2N-C6H4-SO3H
SO3H-C6H4-N=N-X
b) copulation avec naphtylamine donnant l'acide p-sulfonique de naphtylamine-pazobenzne confrant une teinte ros la solution.
Expression des rsultats: en mg NO2-/l ou m.. NO2-/l.
5.12.1.1.

Matriel

Matras jaug de 50 ml bouch meri, de contenance minimum voisine de 54 ml.


2 pipettes de 1 ml.
Spectrophotomtre ou dfaut colorimtre.
5.12.1.2.

Ractifs:

1) 8 g acide sulfanilique dans 1000 ml CH3-COOH 5N.


2) 5 g naphtylamine dans 1000 ml CH3-COOH 5N. Filtrer.
5.12.1.3.

Mode opratoire

50 ml eau.
1 ml sol. d'acide sulfanilique - agiter.
1 ml sol. naphtylamine - agiter.
Mesurer l'absorption 520 m de longueur d'onde (max. d'absorption) aprs 30 min: ce
moment la solution n'volue quasi plus.
Sensibilit: 0,004 0,001 mg/l.
Remarque: le coefficient d'absorption molaire am est suprieur 30000.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.12.2.

86

Dr. Gilles OLIVE


Ractif de Lombard

Principe:
a) diazotation de l'acide sulfanilique en milieu acide
NO2- + H2N-C6H4-SO3H
SO3H-C6H4-N=N-Cl
b) copulation avec phnol en milieu ammoniacal, donnant SO3H-C6H4-N=N-C6H4OH.
Expression des rsultats: en mg NO2-/l ou m.. NO2-/l.
5.12.2.1.

Matriel

Matras jaug de 50 ml et d'une contenance minimum de 58 ml, bouch meri.


Pipette de 1 ml et de 5 ml.
Spectrophotomtre ou photocolorimtre: filtre: 435 m.
5.12.2.2.

Ractifs

1 g acide sulfanilique dans 100 ml sol. sature chaude NH4Cl. Ajouter 1,5 g de phnol puis 100
ml HCl 2N aprs refroidissement.
NH4OH concentr.
5.12.2.3.

Mode opratoire

50 ml eau.
1 ml ractif de Lombard.
Attendre 15 min.
5 ml NH4OH conc.
Mesurer l'absorption par rapport un blanc prpar dans les mmes conditions.
Longueur d'onde: 435 m (max. d'absorption).
Epaisseur des cuvettes: 4,000cm.
Stabilit de la coloration: 24 h.
Dans ces conditions le coefficient d'absorption molaire am = 25500.
Sensibilit: 0,004 0,001 mg/l.
5.12.3.

Mthode utilise au CEBEDEAU

5.12.3.1. Ractifs
Sol. 0,1 % bichlorure de N (1 naphtyl) - tylnediamine (1 ml = 1 mg).
Ractif de diazotation: dissoudre 20 g de sulfanilamide dans 1 litre d'eau contenant 50 ml
H3PO4.

Solution: 1 % de perhydrol.
Solution standard: Dissoudre 75 mg nitrite de Na dans 500 H2O. Prlever 10 ml et porter 100
(1 ml = 10 NO2).
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.12.3.2.

87

Mthode

Prlever 50 ml dans une jauge de 100 ml. Ajouter 1 goutte de Perhydrol et agiter afin d'oxyder le SO2
en sulfate. Ajouter 10 ml de ractif de sulfanilamide et 1 ml de bichlorure de N (1 naphtyl)
thylnediamine, dilu 100 ml et mlanger.
Laisser reposer 30 minutes et mesurer l'absorbance 550 m/n (cuvettes 50 m/m).
Pour trouver la courbe d'talonnage eau distille laquelle on ajoute 0,2 - 0,4, 0,6 - 0,8 et 1,0 ml de
sol. standard de nitrate de Na.
Ajouter 1 goutte H2O2, 10 ml ractif de diazotation et 1 ml de N (1 - naphtyl) - thylnediamine.
Porter 100 ml.
Faire la lecture 550 mu.
Effet du SO2:
Dans 1 chantillon, en prsence de SO2, 1 goutte de H2O2, 1 % oxyde le SO2 en sulfate, mais
n'interfre pas avec l'intensit de la coloration lorsqu'elle est mesure aprs 30 min. (Analyse Chimique
mars 1958, 426-428).
5.12.4.

Mthodes normalises
5.12.4.1.1.

Belgique: NBN 515: Mthode au ractif de Griess.

En prsence de chlore libre et de trichlorure d'azote, les nitrites ne subsistent videmment pas. Le
trichlorure produit une coloration rougetre qui peut tre confondue avec celle des nitrites. Il faut donc
pralablement s'assurer de la prsence ou de l'absence de chlore ou de trichlorure d'azote par
l'orthotolidine.
La mthode prvoit galement une clarification des eaux contenant des substances collodales colores
ou des sels de mtaux lourds par une solution d'hydroxyde sodique puis de sulfate aluminique et par
filtrage.

5.12.4.1.2.

Grande-Bretagne: B. S. 1427 (1962).

Mthode d'aprs Griess avec estimation de la coloration visuelle ou absorptiomtrique (filtre vert:
entre 5000 et 5400 ),
5.12.4.1.3.

France: NFT 90.013.

Mme mthode.
5.12.4.1.4.
Normes internationales applicables l'eau de boisson (Organisation mondiale
de la Sant, Genve).

Mme mthode.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.13.

Dr. Gilles OLIVE

88

DOSAGE DES NITRATES5

5.13.1.

Ractif

acide 1-2-4 phnoldisulfonique.


5.13.2.

Principe

l'acide 1-2-4 phnoldisulfonique formerait avec NO3- un mlange de p nitrophnol, 2-4 dinitrophnol,
et 2-4-6 trinitrophenol, drivs nitrs de teinte jaune.
(Andreotti - Industria Ital. Conserv. 26-203-1951).
Raison pour laquelle la prcision de la mthode n'est que de 5 % environ.
Ions gnants: NO2- pour des doses suprieures 1 mg/l.
Cl pour des doses suprieures 30 mg/l.
Le pH doit tre infrieur 8.0.
Les matires organiques.
Expression des rsultats: en mg NO3-/l ou m.. NO3-/l.
5.13.3.

Matriel

Capsule en porcelaine de 50 ml.


Pipettes de 1 et 10 ml.
Bain d'eau ou tuve 105 C.
Matras jaug de 50 ml.
Spectrophotomtre ou photocolorimtre: filtre 405 m.
5.13.4.

Ractifs

37 g H2SO4 concentr et 3 g de phnol.


NH4OH concentr.
5.13.5.

Mode opratoire

10 ml eau - vaporer sec.


Mouiller le rsidu par 1 ml de ractif.
10 ml eau distille.
10 ml NH4OH concentr.
Porter 50 ml.
Mesurer l'absorption par rapport un blanc prpar dans les mmes conditions:
longueur d'onde: 450 m.
paisseur des cuvettes: 4,000 cm.
Dans ces conditions le coefficient molaire d'absorption am = 1020.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

89

Dr. Gilles OLIVE

Sensibilit: 0,10 0,02 mg/l.


5.13.6.

Mthode utilise au CEBEDEAU

Dosage des nitrates sous forme de nitrosalicylate de Na


Littrature: R. MLLLER - O. W1DEMANN, Jahrb. v. Wasser 22 - p. 249 (1955).
Principe: Formation de paranitrosalicylate de Na color en jaune. C'est la plus intense des colorations
fournies par les nitrates (brucine, diphnylamine, ac. phnodisulfonique). La coloration est stable au
moins 1 h. La loi de Beer est observe de 0 10 mg/l.
Sensibilit: 0,001 - 0,002 mg NO3.
Prcision: (mesure au CEBEDEAU) sur 9 chantillons talons de 1 mg/l: cart 95 % = 2,94 %.
5.13.6.1.

Ractifs

1) Solution salicylate de Na 0,5 %. Cette solution est renouveler journellement.


2) H2SO4 conc.
3) Solution NaOH 30 %. Dissoudre 30 g NaOH pour analyse dans de l'eau distille. Laisser
refroidir et porter 100 cc. Cette solution doit tre conserve en flacon en polythylne.
5.13.6.2.

Mthode

Pipetter 10 ml de l'eau analyser dans un bcher de 25 ml (pour des teneurs en N2O5, suprieures 25
mg/litre, la prise d'essai sera plus petite).
Rendre faiblement alcalin par NaOH.
Ajouter 1 ml de la solution de salicylate de soude.
Evaporer sec au bain marie ou dans une tuve porte 75-80 (ne pas surchauffer, ni chauffer trop
longtemps).
Reprendre le rsidu par 1 ml H2SO4 conc. tout en prenant attention que le rsidu soit compltement
humect.
Attendre 10 minutes puis ajouter 6 ml d'eau bidistille.
Ajouter 10 ml NaOH et transvaser quantitativement la solution dans un jaug de 100. Complter au
trait avec de l'eau bidistille.
En prsence de nitrate, la solution est colore en jaune.
Lire l'extinction 405, 436 ou 366 en utilisant un blanc prpar de la mme faon partir d'eau
bidistille.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


5.13.6.3.

90

Calcul
E405
. 0,488 = mg N 2 O 5
d (cm)
E436
. 0,625 = mg N 2 O 5
d (cm)
E366
. 1,14 = mg N 2 O 5
d (cm)

Remarques:
1) Lorsque l'eau analyser est fortement trouble et souille, on y ajoute, lors du prlvement,
quelques pastilles de NaOH (10-15 par litre). Pour le dosage des nitrates on utilise la
solution claire.
2) Pour l'tablissement d'une courbe d'talonnage on peut utiliser une solution de nitrate de
potassium
Interfrences:
Insensibles Cl- jusqu' 200 mg/l, Fe jusqu' 5 mg/l, et NO2- jusqu' 2 mg/l. En prsence de 20
mg/l NO2-10 mg/l NO3- sont doss.
[Fe] > 0,5-1 mg/l est en gnral dcele par la coloration violette produite lors de l'addition du ractif
la prise d'essai (dpend de la valence du Fe). Le rsidu reste alors color. Si [Fe] 1-5 mg/l, doubler la
dose de ractif.
5.13.7.

Mthodes normalises

5.13.7.1. Norme belge: NBN 525.


Mthode l'acide 1-2-4 phenoldisulfonique.
La mthode prvoit une clarification des eaux contenant des substances collodales, colores ou
beaucoup de sels de fer par une solution d'hydroxyde sodique puis de sulfate aluminique et par
filtration.
La mthode prvoit galement une dchloruration par du sulfate d'argent avec sparation du prcipit
par filtration ou centrifugation.
5.13.7.2. Pays-Bas: Projet de Normes 3130 O 63.
Methoden voor de analyse van water in Ketelbedrijf.
Dtermination photomtrique des nitrates.
5.13.7.3. France: NFT 90.012.
Dtermination l'aide d'acide sulphophnique.
Comparaison de- teintes avec celles de solutions tmoins en tubes de Nessler ou dtermination
colorimtrique.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
5.14. OXYDABILITE AU PERMANGANATE DE POTASSIUM6

5.14.1.

91

A froid (en milieu acide)

Elle fournit une apprciation de la teneur en matires organiques des eaux. La mthode consiste
laisser un certain volume d'eau examiner en contact avec une solution acide de permanganate de
potassium, dont on dose l'excs aprs un temps de raction de quatre heures.
5.14.1.1.
!
!
!

Ractifs ncessaires

solution de permanganate N/80, dont 1 ml correspond 0,1 mg d'oxygne;


solution de sel de Mohr (sulfate de fer ferreux et d'ammonium) 5 g/l;
solution d'acide sulfurique au 1/2 en volume.
5.14.1.2.

Mode opratoire

On introduit 50 ml d'eau analyser dans un matras, on ajoute 5 ml d'acide sulfurique au 1/2, puis 50
ml de permanganate. On abandonne le matras pendant 4 heures la temprature du laboratoire. On
dcolore ensuite par 10 ml de solution de sel de Mohr. On titre en retour l'excs par la solution de
permanganate N/80 jusqu' apparition d'une coloration ros. Connaissant, d'une part la correspondance
entre le sel de Mohr et la solution de permanganate, d'autre part le volume d'eau utilis, on dduit
aisment la quantit d'oxygne ncessaire l'oxydation de la matire organique contenue par litre d'eau
traite.
Il est ncessaire qu'il y ait en permanence un excs de permanganate pendant 4 heures d'oxydation. On
s'assurera, en outre, que l'eau soumise aux essais ne contient pas de quantits importantes de nitrites.
5.14.2.

A chaud (en milieu acide)

Porter bullition 100 ml d'eau sous analyse additionne de 10 ml d'acide sulfurique au 1/2. Ajouter
20 ml de permanganate N/80 et maintenir l'bullition pendant 10 min exactement.
Refroidir rapidement et ajouter 20 ml de sel de Mohr 5 g/l. Titrer par le permanganate N/80 et
retrancher de ce chiffre celui trouv en faisant le mme dosage sur de l'eau distille.
Si V est le volume de permanganate trouv, l'oxydabilit s'exprime par V en mg d'oxygne par litre.
Si l'oxydation dpasse 3,5 mg/l, il faut refaire le dosage en diluant l'chantillon.

5.15.

DEMANDE CHIMIQUE EN OXYGENE (DCO)6

Cette mesure tend remplacer l'ancienne mthode d'apprciation de la teneur en matires organiques
des eaux, mthode au permanganate de potassium. Le pouvoir oxydant du dichromate de potassium
est suprieur celui du permanganate ; toutefois, un certain nombre de chanes droites aliphatiques
sont difficilement attaques ; il en est de mme pour certains noyaux.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.15.1.
!
!
!
!

92

Dr. Gilles OLIVE


Ractifs ncessaires

eau distille ou de puret quivalente;


sulfate de mercure en cristaux;
acide sulfurique dans lequel est dissous du sulfate d'argent. Dissoudre du sulfate d'argent en
cristaux dans de l'acide sulfurique (densit 20 C 1,84 g/ml) raison de 6,6 g par litre.
solution de sulfate de fer ferreux et d'ammonium 0,25 N (sel de Mohr) obtenue par
dissolution de 98 g de FeSO4 (NH4)2SO4, 6 H2O dans l'eau, adjonction de 20 ml de H2SO4 et
ajustement 1 L
5.15.2.

Dtermination du titre exact de la solution de sulfate de fer et d'ammonium

Diluer 250 ml environ avec de l'eau distille, 25 ml exactement mesurs, de solution de dichromate.
Ajouter 75 ml d'acide sulfurique ( 20: 1,84 g/ml): refroidir jusqu' la temprature ambiante et titrer
l'aide de la solution de sulfate de fer et ammonium en prsence de quelques gouttes de solution de
ferrone, soit VT le volume de titrage.
!
!

Solution de dichromate de potassium 0,25 N. Dissoudre dans l'eau 12,2588 g de K2Cr2O7


pralablement sch 110 C pendant 2 heures, complter un litre en fiole jauge.
Solution de ferrone: dissoudre 1,485 g de 1-10 phnanthroline et 0,695 g de sulfate de fer
(FeSO4, 7 H20) dans l'eau. Complter 100 ml.
5.15.3.

Mode opratoire

On peut utiliser un ballon fond plat muni d'un entonnoir latral ferm par un robinet en tflon.
Le ballon d'oxydation muni d'un barreau aimant est assujetti au rfrigrant reflux. Le col rod est
pralablement lubrifi l'aide d'acide sulfurique.
Important: Ne jamais utiliser de graisse.
Le dispositif d'agitation coupl ou non avec le dispositif de chauffage, est plac sous le ballon.
Introduire par l'entonnoir 50 ml d'eau rsiduaire tudier ou une partie aliquote complte 50 ml par
de l'eau distille.
Mettre en marche le dispositif d'agitation.
Ajouter 1 g de sulfate de mercure puis 5 ml d'acide sulfurique (contenant du sulfate d'argent) et
dissoudre. S'assurer qu'il ne subsiste aucun prcipit de chlorure d'argent, dans le cas contraire chauffer
lgrement jusqu' dissolution. Ajouter 25 ml, exactement mesurs, de solution de dichromate puis 70
ml d'acide sulfurique (avec sulfate d'argent 6,6 g/l).
Fermer le robinet et faire bouillir pendant 2 h. Le barreau aimant en mouvement ou non favorise une
bullition rgulire.
5.15.4.

Mesure

Aprs bullition on laisse refroidir et on tend avec de l'eau distille jusqu' environ 400 ml, on ajoute
quelques gouttes de solution de ferrone et on rduit l'excs de dichromate l'aide de la solution de
sulfate de fer et d'ammonium. La coloration passe du vert au rouge violac, soit VT le volume utilis.
Paralllement, on prpare un essai blanc en remplaant la prise d'essai par 50 ml d'eau distille, soit
V0 le volume de sulfate de fer et d'ammonium utilis.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

93

La DCO exprime en mg/l d'O2 est donne par l'expression:


8000 (V0 V1 ) t
V
pour laquelle on a:
t = titre de la solution de sulfate de fer et d'ammonium
V = volume de la prise d'essai en ml d'eau rsiduaire
V0, V1 = volumes en ml de sulfate de fer et d'ammonium.
Cette formule peut tre simplifie en:
1000 (V0 V1 ) 50
x
VT
V
VT tant le volume du titrage, si on a pris soin de titrer la solution de sulfate de fer et d'ammonium sur
25 ml.
Nota. Analyse extraite de la norme AFNOR T 90-101, sept. 1971.

5.16.

DETERMINATION DES MATIERES EN SUSPENSION6

On peut dterminer les matires en suspension prsentes dans les eaux rsiduaires par plusieurs
mthodes:
5.16.1.

Mthode par centrifugation

On rpartit 100 ml d'eau d'gout, pralablement bien agite, dans plusieurs tubes, on centrifuge 10 15
min 3 000 t/min (vitesse habituelle des centrifugeuses commerciales de laboratoire). Les matires
tant agglutines au fond des tubes par la rotation, on verse doucement le liquide clair qui servira
ultrieurement pour dterminer les matires en solution. On remet le prcipit en suspension dans l'eau
distille, on centrifuge nouveau, on jette le liquide surnageant.
Cette deuxime opration ayant t rpte deux fois, on entrane avec un jet de pissette le prcipit
dans une capsule de silice ou de platine. On sche au bain-marie d'abord, puis 105 C jusqu' poids
constant (24 h sont trs suffisantes) et on pse (matires en suspension totales) ; ensuite, on calcine
600 C et on obtient la fraction volatile (perte au feu, assimile parfois aux matires organiques) par
diffrence entre les matires totales et le rsidu calcin.
Lorsqu'il s'agit d'eau de rivire ou d'eaux rsiduaires pures, les volumes d'eau mettre en uvre sont
plus considrables et ncessitent une centrifugeuse munie, soit de godets de grande capacit, soit d'un
bol sparateur vertical rotation rapide. Enfin, la centrifugation peut tre remplace par une filtration
ou une dcantation de 24 h ; toutefois, les rsultats fournis par ces derniers procds sont un peu moins
prcis.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.16.2.

94

Dr. Gilles OLIVE


Mthode par filtration

On filtre par percolation sur un papier sans cendres, pralablement sch 105 C et tar, un volume
bien dtermin d'eau analyser. On sche 105 C pendant 2 h environ jusqu' poids constant
(matires en suspension totales), puis on calcine 600 C (matires volatiles ou perte au feu).
On peut remplacer les filtres sans cendres par des filtres en fibre de verre (Millipore AP 20, Durieux D
28, Sartorius FN 501, etc.). Ces filtres en fibre de verre ne peuvent tre utiliss que pour la
dtermination des matires en suspension totales.
5.16.3.

Mthode densimtrique (pour les boues actives). Emploi du Ponsarimtre

Une mthode rapide de dtermination des matires en suspension, donnant des rsultats approchs et
significatifs pour l'exploitation journalire des stations d'puration par boues actives consiste peser
par densimtrie un volume donn de liqueur de boues actives, log dans un sac en plastique trs lger,
et immerg dans l'eau dcante (interstitielle) de la boue active. La lecture de l'aromtre auquel est
suspendu le sac plastique indique la masse des matires en suspension (p) contenues dans l'chantillon
de boues actives l'tude.
Si paralllement la pese de la boue on effectue un essai de dcantation de cette boue dans une
prouvette agrandie de 2,5 dm3, permettant de dterminer le volume apparent (v) de la boue dpose
au bout de 30 min, on possde les deux lments intervenant dans la dfinition d'un indice de qualit,
Ip = v/p (en ml/g)
qui, au mme titre que l'indice de Mohlman ou l'indice de Donaldson (p) permet de caractriser une
boue active.
L'ensemble du pse-boue et de l'prouvette agrandie constitue le Ponsarimtre (Figure 1).

Figure 1 - Ponsarimtre
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

95

TP 6 MICROPROCESSEUR Z80
6.1.

But

Ce laboratoire ne sera pas facile et trs dstabilisant. Mais tout est fait volontairement.
D'abord le manuel est en anglais, comme c'est le cas maintenant de nombreux manuels d'appareils. De
plus, comme dans la ralit, le manuel est complet, et tout n'est pas utilisable ds le dbut. Il va donc
falloir apprendre faire le tri des informations ncessaire au dpart. Le manuel fait par Hisoft est bien
fait et didactique.
Une autre difficult sera l'utilisation d'un ordinateur, le ZX SPECTRUM. Cet ordinateur qui naquit en
1982 avait une philosophie bien lui. Comme de nos jours, il n'est plus possible d'avoir un tel
ordinateur, nous utiliserons un mulateur. Le choix d'un tel ordinateur a t effectu parce que celui-ci
se rapproche grandement des automates programmables actuels, mme si ces derniers ont un
microprocesseur compatible suprieur (8051).
6.2.

Emulateur ZX SPECTRUM

6.2.1.

Historique des ordinateurs Sinclair

ZX 80
Le premier modle lanc par Sinclair Research en Janvier 1980, le ZX80, possde une mmoire vive
pour le moins opulente de 1 Ko, un clavier membrane multifonction qui permet d'entrer une
instruction BASIC complte par la pression d'une seule touche, systme nouveau et trs apprci des
utilisateurs.
Le systme est simple, un Z80 1 Mhz, pas de son et des graphismes monochromes en 64x44, la RAM
de base n'atteint que 1ko (mais est facilement extensible par module propritaire), et la ROM fait 4Ko,
pour acclrer les calculs le systme ne travail que sur des entiers, son clavier sensitif ne rend pas la
saisie facile mais les instructions sont accessibles par raccourci clavier.
ZX 81
La seconde uvre de Sinclair sera le ZX81, lanc en Mars 1981. Plus petit que le ZX80, mieux
optimis dans son montage et son cot de fabrication, et toujours quip du fameux clavier
membrane que tout le monde complimente (c'est pourtant une vritable horreur), et surtout muni d'une
version beaucoup plus complte du Basic Sinclair. Malgr une fiabilit matrielle catastrophique (le
ZX81 plante ds que l'on pose le doigt sur un de ses priphriques ou mme en cas de trop forte
pression sur les touches du clavier), c'est un succs encore plus probant que le ZX80, grce ses
nombreuses possibilits d'extension (carte graphique haute rsolution, changement de clavier,
extension mmoire de 1 Ko 16 Ko, carte son, carte entre-sortie, etc.) toutes vendues des prix
imbattables et son parc logiciel impressionnant qui permet au nophyte de toucher tout dans des
conditions d'apprentissage idales (la documentation de Sinclair est excellente et le ZX81 est un
ordinateur facile).
C'est en 1981 que sort le ZX81, c'est tout simplement une petite volution du ZX80, les principales
diffrences sont le recarossage de la bte, la vitesse du Z80 est port 3,25 Mhz, celui ci s'occupe
entirement de l'affichage ce qui fait que la machine est considrablement ralentit surtout qu'en plus le
ZX81 travail enfin sur des chiffre virgules flottante, heureusement pour acclrer l'excution des
programmes il est possible de coup le rafrachissement de l'cran et alors le processeur dcharg de ce
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
96
travail voit sa vitesse multipli de 2 3 fois, la ROM elle, est doubl (8Ko) avec 30 nouvelles
instructions, on remarquera aussi une plus grande intgration de la carte mre.
ZX SPECTRUM
Le Spectrum, sorti en Avril 1982, sera le plus beau coup de la carrire de Sir Clive. Pour la premire
fois, voil un ordinateur dot de suffisamment de RAM (16 Ko ou 48 Ko selon le modle), capable
d'afficher des graphismes en haute rsolution (256x192) en 8 couleurs et de produire du son (par un
haut-parleur interne)
Rien n'empchera le Spectrum de devenir peu peu l'un des micro-ordinateurs les plus vendus au
monde et de connatre une longue, trs longue carrire, notamment grce aux innombrables jeux
vidos dvelopps pour lui.
En Avril de la mme anne, le Spectrum se vend au rythme de 12000 units par mois. En Juillet, les
interfaces ZX 1 et 2 sont annonce, ainsi que les tristement clbres Microdrives, systme de stockage
de donnes sur bande pour ordinateurs Sinclair.
Les Microdrives, un des fleurons de Sir Clive, sont gravement reints par la presse spcialise. Ils
s'avrent plus lents charger des donnes que de simples lecteurs de cassette, et leur fiabilit est loin
d'tre probante, les bandes se dtriorant souvent lors de la lecture.
Idem pour les interfaces ZX 1et 2, prvues pour brancher des priphriques tels qu'extensions de ROM
(logiciels sur cartouche) ou joysticks sur Spectrum, qui sont si fragiles qu'elles font planter l'ordinateur
sitt qu'on les touche. Elles seront retires du march moins de deux ans aprs leur sortie, et les
logiciels sur cartouche se limiteront quelques jeux.
Le ZX Spectrum sorti 1982, permet Sinclair de produire un ordinateur ayant toutes les spcifications
modernes, le processeur est maintenant un Z80a cadenc 3,5 Mhz accompagn d'une RAM de 16Ko
ou 48Ko (le modle 48Ko est le plus courant, mais la carte mre est la mme, en fait, sur le modle
16Ko il y seulement la moiti des bancs de RAM occup, les supports eux sont prsents), la ROM est
de nouveau doubl par rapport la machine prcdente et passe donc 16Ko, il y a enfin une
rsolution graphique qui n'a rien envier aux meilleurs de l'poque en 256x192 en 8 couleurs avec
pour chaque deux niveaux de luminosit mais hlas avec de grosses contraintes de proximit, obligeant
la plus part des jeux tre en seulement deux ou quatre couleurs dfinis dans des zones de l'cran bien
distinct et bien spar les unes des autres, ce qui empche pas de les voir travers les sprites par
transparence, le son lui aussi subit une volution puisque maintenant il existe mais est de seulement 1
voie sur 10 octaves.
Le ZX Spectrum est un petit ordinateur personnel mis sur le march au Royaume-Uni en 1982. Bas
sur le processeur Zilog Z80 tournant 3,5 MHz, le Spectrum tait vendu soit avec soit 16Ko soit 48Ko
de mmoire (une extension tait aussi disponible pour passer de 16Ko 48Ko). La sortie vido se
faisait sur une tlvision avec un affichage monochrome. Un clavier en caoutchouc avec au-dessus de
la membrane (similaire celle d'une calculatrice) des inscriptions rappelant les mots cls du BASIC.
Ainsi, en mode de programmation, l'appui sur la touche 'G', par exemple, insre la commande BASIC
GOTO. Les programmes taient enregistrs sur un magntophone classique.
L'affichage vido du Spectrum, bien que rudimentaire par rapport aux standards actuels, tait parfait
l'poque pour l'affichage sur des postes de tlvision portables et n'a pas t un frein au dveloppement
de jeux vido.
Le mode texte est de 32 colonnes sur 23 lignes avec un choix de huit couleurs dans un mode soit
normal, soit brillant, ce qui donne seize teintes. La rsolution graphique est de 256x192 avec les
mmes limitations de couleurs. Le Spectrum a une mthode intressante de gestion des couleurs ; les
attributs de couleurs sont dans une grille de 32 par 24, spare des donnes graphiques et texte, avec
une limitation seulement deux couleurs par cellule. Cela a amen ce qui a t appel colour clash
ou attribute clash (collision de couleurs ou d'attributs) qui provoquait des effets bizarres dans les jeux
de style arcade.
Plusieurs priphriques pour le Spectrum ont t mis sur le march par Sinclair: l'imprimante y tait
dj puisque le Spectrum pouvait utiliser l'imprimante du ZX81. L' interface 1 a ajout un port RS-232
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
97
standard, un port pour rseau local et la possibilit de connecter des microdrives, minuscules cassettes
contenant une bande magntique en boucle qui furent galement utilises sur le Sinclair QL. Sinclair a
aussi dlivr l' Interface 2 qui ajoutait deux ports de manette de jeu et un port pour cartouche ROM.
Le Spectrum 128 (ou Spectrum 128+), t le dernier ordinateur rellement de Sinclair, sorti en 1985,
tous les autres sorti aprs cette sont sorti sous la houlette d'Amstrad et d'ailleurs cela se sent dans leur
conception et leur carte mre en porte l'inscription sriegraphi, mais revenons au ZX128, cet
ordinateur est une peu plus qu'une simple volution de son prdcesseur, il a en plus un nouveau chip
sonore (Yamaha AY-3-8912), et des ports RS232/midi, il a aussi comme son nom l'indique 128Ko de
mmoire et un nouvel diteur basic avec de nouvelles instructions pour grer les modifications
hardware (l'ancien basic est toujours disponible via un menu au dmarrage), ce nouvel diteur basic est
enfin en plein cran, ce qui donne un confort d'utilisation indniable, quant la mmoire
supplmentaire elle peut tre utilis sous forme de ramdisk.
QL
En Janvier 1984, Sinclair annonce le QL (pour Quantum Leap), destin tre son plus grand succs.
Le QL est un ordinateur voulu surpuissant, dot de 128 Ko de RAM et d'un clavier professionnel (ce
qui est l'argument de vente majeur l'poque), et vendu pour 600 .
Malheureusement, la sortie de QL sera prcipite, notamment cause du dsir de Clive Sinclair de le
sortir en mme temps que le Macintosh, et le QL est vendu non finalis, ajoutant la mauvaise
rputation de Sinclair en matire de fiabilit de ses produits.
La machine initialement vendue n'a pas grand chose voir avec le projet tel que l'a voulu Sir Clive, et
le systme d'exploitation, programm par GST, sera vite remplac par le QDOS, ralis par les
ingnieurs de Sinclair, plus fiable mais aux capacits infrieures. Quatre mois aprs son lancement, le
QL est toujours bugg, et curieusement, la moiti des instructions de son systme d'exploitation sont
inexploitables, car stockes sur des Eprom de mauvaise qualit. Sur les 13000 QL pr-commands,
seuls quelques centaines finiront chez leur acheteur, les autres multipliant les retours en garantie. La
rputation de Sinclair est srieusement endommage par l'affaire, et il faudra attendre l't 1984, soit 8
mois aprs la sortie du QL, pour que celui-ci soit enfin fiable, aprs que Sinclair ait essuy les foudres
de l'Advertising Standard Authority pour publicit mensongre.
Soucieux d'apaiser les colres diriges contre sa socit, Sir Clive joue la carte de la prudence pour son
prochain projet, et n'annonce le Spectrum Plus que 24 heures avant son lancement officiel.
Une chance de salut pour Sinclair se prsente sous la forme d'un possible rachat par le milliardaire
Robert Maxwell, durant l't 1985. Hlas, l'automne, l'OPA de Maxwell est rejete par son conseil
d'administration, et Sir Clive se retrouve seul dans la tempte. Les mois qui suivent sont difficiles.
La sortie du Spectrum 128, en fvrier 1986, donne un peu d'air la compagnie. Ce nouvel ordinateur,
qui obtient un certain succs, et la vente des droits du Spectrum Plus la socit Dixons permettent
Sinclair d'ponger ses quelques 10 millions de livres de dettes. Sir Clive est persuad que Sinclair va
redevenir un des joyaux de la couronne britannique, ce qui n'arrivera finalement pas. Moins de huit
mois aprs le lancement du Spectrum 128, lors d'une confrence de presse, Clive Sinclair annonce la
mort dans l'me le rachat de Sinclair Resarch par son principal concurrent et ennemi jur, Alan Sugar,
patron d'Amstrad, pour 5 millions de livres sterling.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
6.2.2.

Dr. Gilles OLIVE

98

Les ordinateurs SINCLAIR


La gamme 8 bits:

Anne
1979
1980
1981
1982
1984
1986
1987**
1988
1988
1988
1988

Modle
Caractristiques
Particularits
MK14
256 octets
carte mre, clavier hexadcimal et affichage 8 digits LED
ZX 80
Z80A* 3,25 MHz 1 Ko
disponible en kit ou dj mont
ZX 81
Z80A* 3,25 MHz 1 Ko
disponible en kit ou dj mont
ZX Spectrum
Z80A* 3,54 MHz 16 Ko
rapidement propos avec 48 Ko
ZX Spectrum
Z80A* 3,54 MHz 48 Ko
apparition d'un clavier mcanique
plus
Spectrum 128 K
Z80A 3,54 MHz 128 Ko
un gros radiateur noir sur le cot droit
Spectrum 2+
Z80A 3,54 MHz 128 Ko
lecteur de cassettes intgr, boitier gris clair
Spectrum +2A
Z80A 3,54 MHz 128 Ko
ROM identique au Spectrum +3 avec lecteur de cassettes
Spectrum +2B
Z80A 3,54 MHz 128 Ko
identique au Spectrum +2A mais fabriqu en Chine
Spectrum +3
Z80A 3,54 MHz 128 Ko
lecteur de disquette 3" intgr
Z88
Z80A 3,27 MHz 32 Ko
notebook fabriqu par une filiale "Cambridge Computer"
* Le microprocesseur sur certaine production est remplac par un NEC780C, compatible Z80
** En 1986 Sinclair est rachet par Amstrad, le Spectrum +2 est la 1re machine issue de ce regroupement

6.2.3.

Le ZX Spectrum

The keyboard
ZX Spectrum characters comprise not only the single symbols (letters, digits, etc), but also the
compound tokens (keywords, function names, etc) and all these are entered from the keyboard rather
than being spelled out. To obtain all these functions and commands, some keys have five or more
distinct meanings, given partly by shifting the keys (i.e. pressing either the CAPS SHIFT key or the
SYMBOL SHIFT key at the same time as the required one) and partly by having the machine in
different modes.
The mode is indicated by the cursor, a flashing letter that shows where the next character from the
keyboard will be inserted:
!

K (for keywords) mode automatically replaces L mode when the machine is expecting a
command or program line (rather than INPUT data), and from its position on the line it
knows it should expect a line number or a keyword. This is at the beginning of the line, or
just after THEN, or just after: (except in a string). If unshifted, the next key will be
interpreted as either a keyword (written on the keys), or a digit.

L (for letters) mode normally occurs at all other times. If unshifted, the next key will be
interpreted as the main symbol on that key, in lower case for letters.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

CHIMIE INDUSTRIELLE

Dr. Gilles OLIVE

25/03/2005

99

1re Edition

Tome TP
Dr. Gilles OLIVE
100
In both K and L modes, SYMBOL SHIFT and a key will be interpreted as the subsidiary red character
on the key and CAPS SHIFT with a digit key will be interpreted as the control function written in
white above the key CAPS SHIFT with other keys does not affect the keywords in K mode, and in L
mode it converts lower case to capitals.
!

C (for capitals) mode is a variant of L mode in which all letters appear as capitals. CAPS
LOCK causes a change from L mode to C mode or back again.

E (for extended) mode is used for obtaining further characters, mostly tokens. It occurs after
both shift keys are pressed together, and lasts for one key depression only. In this mode, a
letter gives one character or token (shown in green above it) if unshifted, and another (shown
in red below it) if pressed with either shift. A digit key gives a token if pressed with
SYMBOL SHIFT; otherwise it gives a color control sequence.

G (for graphics) mode occurs after GRAPHICS (CAPS SHIFT and 9) is pressed, and lasts
until it is pressed again or 9 is pressed on its own. A digit key will give a mosaic graphic, quit
GRAPHICS or DELETE, and each of the letter keys apart from V, W, X, Y and Z, will give
a user-defined graphic.

If any key is held down for more than about 2 or 3 seconds, it will start auto-repeating.
Keyboard input appears in the bottom half of the screen as it is typed, each character (single symbol or
compound token) being inserted just before the cursor. The cursor can be moved left with CAPS
SHIFT and 5, or right with CAPS SHIFT and 8. The character before the cursor can be deleted with
DELETE (CAPS SHIFT and 9). (Note: the whole line can be deleted by typing EDIT (CAPS SHIFT
and 1) followed by ENTER.)
When ENTER is pressed, the line is executed, entered into the program, or used as INPUT data as
appropriate, unless it contains a syntax error. In this case a flashing ? appears next to the error.
As program lines are entered, a listing is displayed in the top half of the screen. The last line entered is
called the current line and is indicated by the symbol >; this can be moved by using the keys (CAPS
SHIFT and 6) and (CAPS SHIFT and 7). If EDIT (CAPS SHIFT and 1) is pressed, the current line
is brought down to the bottom part of the screen and can be edited.
When a command is executed or a program run, output is displayed in the top half of the screen and
remains until a program line is entered, or ENTER is pressed with an empty line, or or is
pressed. In the bottom part appears a report giving a code (digit or letter) referred to in Appendix B.
The report remains on the screen until a key is pressed (and indicates K mode).
In certain circumstances, CAPS SHIFT with the SPACE key acts as a BREAK, stopping the computer
with report D or L. This is recognized
1
2

at the end of a statement while a program is running, or


while the computer is using the cassette recorder or printer.

The television screen


This has 24 lines, each 32 characters long, and is divided into two parts. The top part is at most 22
lines and displays either a listing or program output. When printing in the top part has reached the
bottom, it all scrolls up one line; if this would involve losing a line that you have not had a chance to
see yet, then the computer stops with the message scroll ?. Pressing the keys N, SPACE or STOP will
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
101
make the program stop with report D BREAK - CONT repeats; any other key will let the scrolling
continue. The bottom part is used for inputting commands, program lines, and INPUT data, and also
for displaying reports. The bottom part starts off as two lines (the upper one blank), but it expands to
accommodate whatever is typed in. When it reaches the current print position in the top half, further
expansions will make the top half scroll up.
6.2.4.

L'mulateur spectaculator

Nous utiliserons la version 5.3. Il suffit de lancer Spectaculator.

Si le menu suivant apparat au dmarrage, il faut cliquer sur la dernire ligne (Go to ZX Spectrum
BASIC).

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
102
A partir de maintenant vous tes sous ZX Spectrum avec toute sa philosophie. Attention, ceci est
droutant au dbut...

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
103
Remarque importante: comme il est dit plus haut dans l'historique des ordinateurs Sinclair, le ZX
Spectrum utilisait comme mmoire de masse des cassettes audios. Cela est
impossible maintenant. On doit donc charger une cassette dans le lecteur
virtuel: c'est un fichier avec l'extension tzx, tap ou mdr (pour les microdrives).
Dans notre cas nous choisirons Hisoft Devpac v3M21 GENS.tzx
Soit on clique sur sur l'icone d'ouverture, soit dans le menu File on clique sur
Open. Au slecteur de fichiers on slectionne Hisoft Devpac v3M21
Gens.tzx.

Au bien si on a de la chance, on peut cliquer directement sur le bon fichier, si


celui-ci apparat dans la liste des derniers fichiers utiliss.
6.3.

DEVPAC
HISOFT
ZX Spectrum Programmer's Manual
DEVPAC
(C) Hisoft 1985

(Typed in 1998 by Nele Abels-Ludwig. Help to keep Spectrum software usable. Transcribe technical manuals !)
(Adapted by G. Olive for this syllabus)

6.3.1.
6.3.1.1.

HiSoft GENS3 Programmer's Manual


GETTING STARTED

Introduction and Loading Instructions


GENS3 is a powerful and easy-to-use Z80 assembler, which is very close to the standard Zilog assembler in definition.
Unlike many other assemblers available for microcomputers, GENS3 is an extensive, professional piece of software and

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

104

Dr. Gilles OLIVE

you are urged to study the following sections, together with the example in Appendix 3, very carefully before attempting to
use the assembler. If you are a complete novice, work through Appendix 3 first.
GENS3 is roughly 9K bytes in length, once relocated, and uses its own internal stack so that it is a self-contained piece of
software. It contains its own integral line editor which places the textfile immediately after the GENS3 code while the
assembler's symbol table is created after the textfile. Thus when loading GENS3 you must allow enough room to include
the assembler itself and the maximum symbol table and text size that you are likely to use in the current session. It will
often be convenient, therefore, to load GENS3 into low memory.
To load GENS3 proceed as follows:
Place the supplied tape in your cassette recorder, type:
LOAD "" CODE xxxxx
and press PLAY on the recorder - where xxxxx is the decimal address at which you want GENS3 to run.
Once you have loade the GENS3 code into the computer you may enter the assembler by RANDOMIZE USR xxxxx where
xxxxx is the address at which you loaded the assembler code. If at any subsequent time you wish to re-enter the assembler
then you should execute the address xxxxx + 56 for a cold start (destroying any text) or address xxxxx for a warm start
(preserving any previously created textfile).
For example, say you want to load GENS3 so that it executes from address 26000 decimal - proceed as follows:

LOAD "" CODE 26000


RANDOMIZE USR 26000
To re-enter the assembler use RANDOMIZE USR 26056 for a cold start and RANDOMIZE USR 26000 for a warm start.
Once you have entered GENS3, you will be prompted with a '>' sign, the editor's command prompt - consult Section
6.3.1.3 for how to enter and edit text and Section 6.3.1.2 for what to enter.
Making a Backup Copy
Once you have loaded GENS3 into your Spectrum's memory then you can make a backup copy of the assembler as
follows:
SAVE "GENS3" CODE xxxxx,10034 <ENTER>
SAVE*"M";1;"GENS3" CODE xxxxx,10034 <ENTER>

to cassette
to Microdrive

where: xxxxx is the address at which you loaded GENS3.


Please note that we allow you to make a backup copy of GENS3 for your own use so that you can program with
confidence. Please do not copy GENS3 to give (or worse, sell) to your friends, we supply very reasonably priced software
and a full after-sales support service but if enough people copy our software we shall not be able to continue this; please
buy, don't steal.

6.3.1.2.

DETAILS OF GENS3

6.3.1.2.1.

How GENS3 Works, Assembler Options, Listing Format etc.

GENS3 is a fast, two-pass Z80 assembler, which assembles all standard Z80 menmonics and has added features which
include macros, conditional assembly, many assembler commands and a binary-tree symbol table.
When you invoke an assembly (using the editor 'A' command - see Section 6.3.1.3) you will first be asked to specify 'Table
size: ' in decimal. This is the amount of space that will be allocated to the symbol table during the assembly. If you default
(by simply hitting ENTER) then GENS3 will choose a symbol table size that it thinks is suitable for the size of the text -

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

105

normally this will be perfectly acceptable. However, when using the 'Include' option, you may have to specify a larger than
normal symbol table size; the assembler cannot predict the size of the file that will be included.
After 'Table size: ' you will be asked for any 'Options: ' that you require. Enter these in decimal adding the option numbers
together if you want more than one option. The options available are:
Assembler Options:
Option 1
Produce a symbol table listing at the end of the second pass of the assembly.
Option 2
Do not generate any object code.
Option 4
Do not produce an assembly listing.
Option 8
Direct any assembly listing to the printer.
Option 16
Simply place the object code, if generated, after the symbol table. The Location Counter is still updated,
by the ORG so that object code can be placed in one section of memory but designed to run elsewhere.
Option 32
Turn off the check of where the object code is going - useful for speeding up assembly.
Example: Option 36 produces a fast assembly - no listing is generated and no checks are made to see where the object code
is being placed.
Note that if you have used Option 16 then the ENT assembler directive will have no effect. You can work out where the
object code has been placed if Option 16 has been specified by using the editor 'X' command to find out the end of the text
(the second number displayed) and then adding to this the amount of symbol table allocated + 2.
Assembly takes place in two passes; during the first pass GENS3 searches for errors and compiles the symbol table, the
second pass generates object code (if option 2 is not specified). During the first pass nothing is displayed on the screen or
printer unless an error is detected, in which case the rogue line will be displayed with an error number below it (see
Appendix 1 p 120). The assembly is paused - press 'E' to return to the editor or any other key to continue the assembly from
the next line.
At the end of the first pass the message:
Pass 1 errors: nn
will be displayed. If any errors have been detected the assembly will then halt and not proceed to the second pass. If any
labels were referenced in the operand field but never declared in a label field then the message '*WARNING* label absent'
will be displayed for each missing label declaration.
It is during the second pass that object code is generated (unless generation has been turned off by Option 2 - see above).
An assembler listing is generated during this pass unless it has been switched off by Option 4 or the assembler command
*L-. The assembler listing is normally of the form:
C000 210100

25

15

label
LD
HL,1
21
26

The first entry in the line is the value of the Location Counter at the start of processing this line, unless the mnemonic in
this line is one of the pseudo-mnemonics ORG, EQU or ENT (see Section 6.3.1.2.8) in which case the first entry will
represent the value in the operand field of the instruction. This entry is normally displayed in hexadecimal but may be
displayed in unsigned decimal through use of the assembler command *D+ (see Section 6.3.1.2.10)
The next entry, from column 6, is up to 8 characters in length (representing up to 4 bytes) and is the object code produced
by the current instruction - but see the *C assembler command below.
Then comes the line number - an integer in the range 1 to 32767 inclusive.
Columns 21-26 of the first line contain the first 6 characters of any label defined in this line.
The following two paragraphs apply only to systems with narrow screen widths - on systems with a screen width greater
than 40 each assembler listing line is contained wholly on one screen line.
After any label comes a new line - on this line the mnemonic is displayed from columns 21-24. Then comes the operand
field from column 26 of this line and finally any comments that have been inserted at the end of the line with new lines
being generated as necessary.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

106

The above format aids readability of the assembler listing on such a narrow screen width as that of the SPECTRUM.
GENS3 does not re-define the screen width of the SPECTRUM because this would increase the space occupied by GENS3
and would be restrictive in that the standard output routines of the SPECTRUM ROM could not be used.
The *C assembler command may be used to produce a shorter assembly listing line - its effect is to omit the 9 characters
representing the object code of the line thus enabling most assembler lines to fit on one screen line. See Section 6.3.1.2.9
below.
Modifying the Listing Format
It is possible to modify the form in which each line of the listing is split by POKEing 3 locations within GENS3. Details of
how to do this are given below. We distinguish between 'assembly line' which is the current line of the assembly listing
held in an internal buffer and 'screen line' which is a line that actually appears on the screen. An assembly line will
normally generate more than one screen line.
1. Location 'Start of GENS3 + 51 (#33)' dictates at which column position - 5 the first screen line of the assembly line will
be terminated. Change this byte to zero to cause the line to wrap round (useful if you have a full-width printer) or any other
value (<256) to end the first screen line at a particular column.
2. Location 'Start of GENS3 + 52 (#34)' gives the column position (starting at 1) at which each subsequent screen line of
the assembly line is to start.
3. Location 'Start of GENS3 + 53 (#35)' gives how many characters from the remainder of the assembly line are to be
displayed on each screen line after the first screen line.
As an example, say you wanted the first screen line of each assembly line to contain 20 characters (i.e. not including the
label field) and then each subsequent screen line to start at column 1 and fill the whole line. Also assume that you have
loaded GENS3 at 26000 decimal. To effect these changes, execute the following POKE instructions from within BASIC:
POKE 26051,20
POKE 26052,1
POKE 26053,31

there must be at least one space at the


start of the subsequent screen line.

The above modifications are only applicable if the *C command has not been used - use of the *C command causes lines to
roll over where necessary.
The assembly listing may be paused at the end of a line by hitting CAPS SHIFT and SPACE together - subsequently hit 'E'
to return to the editor or any other key to continue the listing.
The only errors that can occur during the second pass are *ERROR* 10 (see Appendix 1 p 120) and 'Bad ORG!' (which
occurs when the object code will overwrite GENS3, the textfile or the symbol table - the detection of this can be turned off
by Option 32. *ERROR* 10 is non-fatal and you may continue the assembly as for first pass errors, whereas 'Bad ORG!' is
fatal and immediately returns control to the editor.
At the end of the second pass the message:
Pass 2 errors: nn
will be displayed followed by warnings of any absent labels - see above.
The following message is now displayed:
Table used: xxxxx from yyyyy
This informs you of how much of the symbol table was used compared with how much was allocated.
At this point, if the assembler directive ENT has been used correctly, the message 'Executes: nnnnn' is displayed. This
shows the run address of the object code - you can execute the code by using the editor 'R' command. Be careful using the
'R' command unless you have just finished a successful assembly and seen the 'Executes: nnnnn' message.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

107

Dr. Gilles OLIVE

Finally, if option 1 has been specified, an alphabetic list of the labels used and their associated values will be produced. The
number of entries displayed on one line may be changed by POKEing 'Start of GENS3 + 50' with the relevant value; the
default is 2.
Control now returns to the editor.

6.3.1.2.2.

Assembler Statement Format.

Each line of text that is to be processed by GENS3 should have the following format where certain fields are optional:
LABEL
start

MNEMONIC
LD

OPERANDS
HL,label

COMMENT
;pick up 'label'

Spaces and tab characters (inserted by the editor) are generally ignored.
The line is processed in the following way:
The first character of the line is checked and subsequent action depends on the nature of this character as indicated below:
';' the whole line is treated as a comment i.e. effectively ignored.
'*' expects the next character(s) to constitute an assembler command (see Section 6.3.1.2.9). Treats all characters
after the command as a comment.
<CR> (end-of-line character) simply ignores the line.
' ' (space or tab) if the first character is a space or a tab character then GENS3 expects the next non-space or non-tab
character to be the start of a Z80-mnemonic.
If the first character of a line is any character other than those given above then the assembler expects a label to be present see Section 6.3.1.2.3. After processing a valid label, or if the first character of the line is a space/tab, the assembler searches
for the next non-space/tab character and expects this to be either an end-of-line character or the start of a Z80-mnemonic
(see Appendix 2 p 121) of up to 4 characters in length and terminated by a space/tab or end-of-line character. If the
mnemonic is valid and requires one or more operands then spaces/tabs are skipped and the operand field is processed.
Labels may be present alone in an assembler statement; this is useful for increasing the readability of the listing.
Comments may occur anywhere after the operand field or, if a mnemonic takes no arguments, after the mnemonic field.

6.3.1.2.3.

Labels.

A label is a symbol, which represents up to 16 bits of information.


A label can be used to specify the address of a particular instruction or data area or it can be used as a constant via the EQU
directive (see Section 6.3.1.2.8).
If a label is associated with a value greater than 8 bits and it is then used in a context where an 8 bit constant is applicable
then the assembler will generate an error message e.g.
label

EQU
LD

#1234
A,label

will cause *ERROR* 10 to be generated when the second statement is processed during the second pass.
A label may contain any number of valid characters (see below) although only the first 6 are treated as significant; these
first 6 characters must be unique since a label cannot be re-defined (*ERROR* 4). A label must not constitute a reserved
word (see Appendix 2 p 121) although a reserved word may be embedded as part of a label.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

108

The characters which may be legally used within a label are 0-9, $ and A-z. Note that 'A-z' included all the upper and lower
case alphabetics together with the characters [, \, ], ^, # and _. A label must begin with an alphabetic character.
Some examples of valid labels are:
LOOP
loop
a_long_label
L[1]
L[2]
a
LDIR
two^5

LDIR is not a reserved word

6.3.1.2.4.

Location Counter

The assembler maintains a location counter so that a symbol in the label field can be associated with an address and entered
into the symbol table. This location counter may be set to any value via the ORG assembler directive (see Section
6.3.1.2.8).
The symbol '$' can be used to refer to the current value of the location counter e.g. LD HL,$+5 would generate code that
would load the register pair HL with a value 5 greater than the current location counter value.

6.3.1.2.5.

Symbol Table

When a label is encountered for the first time it is entered into a table along with two pointers which indicate, at a later
time, how this label is related alphabetically to other labels within the table. If the first occurrence of the label is in the label
field then its value (as given by the location counter of the value of the expression after an EQU assembler directive) is
entered into the symbol table. Otherwise the value is entered whenever the symbol is subsequently found in the label field.
This type of symbol table is called a binary tree symbol table and its structure enables symbols to be entered into and
recovered from the table in a very short time - essential for large programs. The size of an entry in the table varies from 8
bytes to 13 bytes depending on the length of the symbol.
If, during the first pass, a symbol is defined more than once then an error (*ERROR* 4) will be generated since the
assembler does not know which value should be associated with the symbol.
If a symbol is never associated with a value then the message '*WARNING* symbol absent' will be generated at the end of
the assembly. The absence of a symbol definition does not prevent the assembly from continuing.
Note that only the first 6 characters of a symbol are entered into the symbol table in order to keep down the size of the
table.
At the end of the assembly you will be given a message stating how much memory was used by the symbol table during
this assembly - you may change how much memory is allocated to the symbol table by responding to the 'Table: ' prompt
when starting the assembly (see Section 6.3.1.2.1).

6.3.1.2.6.

Expressions.

An expression is an operand entry consisting of either a single TERM or a combination of TERMs each separated by an
OPERATOR. The definitions of TERM and PERATOR follow:
TERM

decimal constant e.g. 1029


hexadecimal constant e.g. #405
binary constant e.g. %10000000101
character constant e.g. "a"
label e.g. L1029

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

109

Dr. Gilles OLIVE

also '$' may be used to denote the current value of the location
counter.
OPERATOR

'+'
'-'
'&'
'@'
'!'
'*'
'/'
'?'

addition
substraction
logical AND
logical OR
logical XOR
integer multiplication
integer division
MOD function (a ? b = a - (a/b)*b)

Notes: '#' is used to denote the start of a hexadecimal number, '%' for a binary number and '"' for a character constant.
When reading a number (decimal, hexadecimal or binary) GENS3 takes the least significant 16 bits of the number (i.e.
MOD 65535) e.g. 70016 becomes 4480 and #5A2C4 becomes #A2C4.
A wide variety of operators are provided but no operator precedence is observed - expressions are evaluated strictly from
left to right. The operators '*', '/' and '?' are provided merely for added convenience and not as part of a full expression
handler which would increase the size of GENS3.
If an expression is enclosed within parentheses then it is taken as representing a memory address as in the instruction LD
HL,(loc+5) which would load the register pair HL with the 16 bit value contained at memory location 'loc+5'.
Certain Z80 instructions (JR and DJNZ) expect operands which have an 8 bit value and not a 16 bit one - this is called
relative addressing. When relative addresses are specified GENS3 automatically subtracts the value of the location counter
at the NEXT instruction from the value given in the operand field of the current instruction in order to obtain the relative
address for the current instruction. The range of values allowed as a relative address are the location counter value of the
next instruction -128 to +127.
If, instead, you wish to specify a relative offset from the location counter value of the current instruction then you should
use the symbol '$' (a reserved word) followed by the required displacement. Since this is now relative to the current
instruction's location counter value the displacement must be in the range -126 to +129 inclusive.
Examples of valid expressions:
#5000 - label
%1001101 ! %1011
#3456 ? #1000
4 + 5 * 3 - 8
$-label+8
2345 / 7 - 1
"A"+128
"y"-";"+7
(5 * label - #1000 & %1111)
17 @ %1000

gives %1000110
gives #456
gives 19
gives 334

gives 25

Note that the spaces may be inserted between TERMs and OPERATORs and vice versa but not within TERMs.
If a multiplication operation would result in an absolute value greater than 32767 then *ERROR* 15 is reported while if a
division operation involves a division by zero then *ERROR* 14 is given - otherwise overflow is ignored. All arithmetic
uses the two's complement for where any numbers greater than 32767 are treated as negative e.g. 60000 = -55336 (6000065536).

6.3.1.2.7.

Macros.

Macros allow you to write shorter, more meaningful assembler programs but they must be used with care and must not be
confused with subroutines. A macro definition consists of a series of assembler statements, together with the name of the
macro; when this macro name is used subsequently in the mnemonic field then it will be replaced by all the assembler
statements that made up the definition e.g. the macro NSUB may be defined thus:

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
NSUB

Dr. Gilles OLIVE


MAC
OR
SBC
ADD
ENDM

110

A
HL,DE
HL,DE

and then, whenever NSUB is used as a mnemonic, it will generate the three assembler statements OR A, SBC HL and ADD
HL,DE. This saves you typing and makes your program easier to understand but you must remember that every occurrence
of NSUB results in code being generated and it may be more efficient to use a CALL to a subroutine instead. Below, we
give the format of macro definitions and invocation together with some more examples, please study these carefully.
A macro definition takes the following form:
Name

MAC
.
.
macro definition
.
.
ENDM

where Name is the macro name that will invoke the text of the macro whenever Name is used subsequently in the
mnemonic field, MAC indicates the start of the macro definition and ENDM indicates the end of the definition. Parameters
of the macro may be referenced within the macro definition by the use of the equals sign '=' followed by the parameter
number (0-31 inclusive). For example, the macro:

MOVE

MAC
LD
LD
LD
LDIR
ENDM

HL,=0
DE,=1
BC,=2

takes 3 parameters, source address, destination address and length, loads the relevant values in HL, DE and BC and then
performs the instruction LDIR. To invoke this macro at a later stage in your program, simply use the name of the macro in
the mnemonic field followed by the values that you wish the 3 parameters to take e.g.
MOVE 16384,16385,4069
We have used specific addresses in this example but we can, in fact, use any valid expression to specify the value of the
macro parameter e.g.
MOVE start,start+1,length
Think ... is the above a good use of a macro ? Could it have been a subroutine ?
Within the macro definition, the parameters may appear in any valid expression e.g.
HMS

MAC
LD
LD
ADD
LD
ADD
ENDM

HL,=0*3600
DE,=1*60
HL,DE
DE,=2
HL,DE

is a macro, taking 3 parameters - hours, minutes, seconds, that produces in register HL the total number of seconds
specified by the parameters.
You might use it like this:
Hours
Minutes

EQU
EQU

CHIMIE INDUSTRIELLE

2
30

25/03/2005

1re Edition

Tome TP
Seconds
Start

Dr. Gilles OLIVE


EQU
EQU

12
0

HMS
LD
ADD

Hours,Minutes,Seconds
DE,Start
HL,DE
; HL gives the finish time

111

Macros may not be nested so that you cannot define a macro within a macro definition nor can you invoke a macro within a
macro definition.
At assembly time, whenever a macro name is encountered in the mnemonic field, the text of the macro is then assembled.
Normally this text is not listed in the assembly listing - only the macro name is shown. However, you can force a listing of
the expansion of the macro by using the assembler command *M+ before you want macro expansions to be listed subsequently use *M- to switch off this expansion.
If you run out of Macro Buffer space then a message will be displayed and the assembly aborted; use the editor's C
command after saving your text, to allocate a larger macro buffer.

6.3.1.2.8.

Assembler Directives

Certain 'pseudo-mnemonics' are recognised by GENS3. These assembler directives, as they are called, have no efect on the
Z80 processor at run-time, i.e. they are not decoded into opcodes, they simply direct the assembler to take certain actions at
assembly time. These actions have the effect of changing, in some way, the object code produced by GENS3.
Pseudo-menmonics are assembled exactly like executable instructions; they may be preceded by a label (necessary for
EQU) and followed by a comment. The directives available are:
ORG expression
sets the location counter to the value 'expression'. If option 2 and option 16 are both not selected and an ORG would result
in the overwriting of the GENS3 program, the textfile or the symbol table then the message 'Bad ORG!' is displayed and
the assembly is aborted. See Section 2.0 for more details on how options 2 and 16 affect the use of ORG.
EQU expression
must be preceded by a label. Sets the value of the label to the value of 'expression'. The expression cannot contain a symbol
which has not yet been assigned a value (*ERROR* 13).
DEFB expression,expression,...
each 'expression' must evaluate to 8 bits; the byte at the address currently held by the location counter is set to the value of
'expression' and the location counter advanced by 1. Repeats for each expression.
DEFW expression,expresion,...
sets the 'word' (two bytes) at the address currently held by the location counter to the value of 'expression' and advances the
location counter by 2. The lesser significant byte is placed first followed by the more significant byte. Repeats for each
expression.
DEFS expression
increases the location counter by the value of 'expression' - equivalent to reserving a block of memory of size equal to the
value of expression.
DEFM "s"
defines the contents of n bytes of memory to be equal to the ASCII representation of the string s, where n is the length of
the string and may be, in theory, in the range 1 to 255 inclusive although, in practice, the length of the string is limited by
the length of the line you can enter from the editor. The first character in the operand field ('"' above) is taken as the string
delimiter and the string s is defined as those characters between two delimiters; the end-of-line character also acts as a
terminator of the string.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

112

Dr. Gilles OLIVE

ENT expression
this has no effect on the generated object code, it is simply used to define an address to which the editor's R command will
jump to. ENT expression sets this address to the value of expression - used in conjunction with the editor 'R' command (see
section 3). There is no default for the execute address.

6.3.1.2.9.

Conditional Pseudo-mnemonics.

Conditional pseudo-mnemonics provide the programmer with the capability of including or not including certain sections
of source text in the assembly process. This is made available through the use of IF, ELSE and END.
IF expression
this evaluates 'expression'. If the result is zero then the assembly of subsequent lines is turned off until either an 'ELSE' or
an 'END' pseudo-mnemonic is encountered. If the value of 'expression' is non-zero then the assembly continues normally.
ELSE
this pseudo-mnemonic simply flips the assembly on and off. If the assembly is on before the 'ELSE' is encountered then it
will subsequently be turned off and vice versa.
END
'END' simply turns the assembly on.
Note: Conditional pseudo-mnemonics cannot be nested; no check is made for nested IFs so any attempt to nest these
mnemonics will have unspecified results.

6.3.1.2.10.

Assembler Commands.

Assembler commands, like assembler directives, have no effect on the Z80 processor at runtime since they are not decoded
into opcodes. However, unlike assembler directives, they also have no effect on the object code produced by the assembler
- assembler commands simply modify the listing format. An assembler command is a line of the source text that begins
with an asterisk '*'. The letter after the asterisk determines type of the command and must be in upper case. The remainder
of the line may be any text except that the commands 'L' and 'D' expect a '+' or a '-' after the command.
The following commands are available:
*E
(eject) causes three blank lines to be sent to the screen or the printer - useful for separating modules.
*Hs
causes string s to be taken as a heading which is printed after each eject (*E). *H automatically performs a *E.
*S
causes the listing to be stopped at this line. The listing may be reactivated by pressing any key on the keyboard. Useful for
reading addresses in the middle of the listing. Note: *S is still recognized after a *L-, *S does not halt printing.
*Lcauses listing and printing to be turned off beginning with this line.
*L+
causes listing and printing to be turned on starting with this line.
*D+
causes the value of the location counter to be given in decimal at the beginning of each line instead of the normal
hexadecimal. Unsigned decimal is used.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

113

Dr. Gilles OLIVE

*Dreverts to using hexadecimal for the value of the location counter at the start of each line.
*Cshorten the assembler listing starting from the next line. The listing is abbreviated by not including the display of the object
code generated by the current line - this saves 9 characters and enables most assembler lines to fit within one 32 character
screen line, thus improving readability.
*C+
Revert to the full assembler listing as described in Section 6.3.1.2.1.
*M+
Turn on the listing of macro expansions.
*MTurn off the listing of macro expansions.
*F {filename}
This is a very powerful command which allows you to assemble text from tape to microdrive - the textfile is read from the
tape or microdrive into a buffer, a block at a time, and then assembled from the buffer; this allows you to create large
amounts of object code since the text being assembled does not take up valuable memory space.
The filename (up to 10 characters) of the textfile you wish to 'include' at this point in the assembly may, optionally, be
specified after the 'F' and must be preceded with a space. If the file is on microdrive cartridge then you indicate this by
starting the filename with a drive number and a colon e.g.
*F 2:test
*F test

to include from Microdrive Drive 2


to include from tape

If no filename is given then the first textfile found on the tape is included, this is not allowed for microdrive inclusion.
If you are including from microdrive then the text to be included should have been saved previously using the editor's P(ut)
command in the normal way.
If including from tape then you must have saved the file previously to tape using the editor's 'T' command and not the 'P'
command - this is necessary because a textfile to be included from tape must be dumped out in blocks with sufficient length
inter-block gaps to allow the assembly of the current block before the next block is loaded from the tape. The size of the
block used by this command (and the editor's 'T' command) is set using the editor's 'C' command (see next section). The
ability to select the size of this buffer enables you to optimise the size/speed ratio of any inclusion of text from tape; for
example if you are not intending to use the 'F command during an assembly then you may find it useful to specify a buffer
size of 0 to minimize the space taken up by GENS3 and its workspace.
Note that the buffer size specified in the session in which you dumped out a file to be included must be the same as the
buffer size given in the session in which you are actual including the text.
Whenever the assembler detects an 'F' command it searches the tape or microdrive cartridge for the relevant file; this will
happen in the first and second passes since the include text must be scanned in each pass. If including from tape, the tape is
then searched for an include file with the required filename, or for the first file. If an include file is found whose filename
does not match that required then the message 'Found filename' is displayed and the searching continues, otherwise 'Using
filename' is displayed, the file loaded, block by block, and included.
See 6.3.1.6 Appendix 3 for an example of the use of this command.
Assembler commands, other than *F, are recognized only within the second pass.
If assembly has been turned off by one of the conditional pseudo-mnemonics then the effect of any assembler command is
also turned off.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


6.3.1.3.

114

THE INTEGRAL EDITOR

6.3.1.3.1.

Introduction to the Editor.

The editor supplied with all versions of GENS3 is a simple, line-based editor designed to work with all Z80 operating
systems while maintaining ease of use and the ability to edit programs quickly and efficiently.
In order to reduce the size of the textfile, a certain amount of compression of spaces is performed by the editor. This takes
place according to the following scheme: whenever a line is typed in from the keyboard it is entered, character by character
into a buffer internal to the assembler; then, when the line is finished (i.e. you hit ENTER), it is transferred from the buffer
into the textfile. It is during this transfer that certain spaces are compressed: the line is scanned from its first character, if
this is a space then a tab character is entered into the textfile and all subsequent spaces are skipped. If the first character is
not a space then characters are transferred from the buffer to the textfile until a space is detected whereupon the action
taken is the same as if the next character was the first character in the line. This is then repeated a further time with the
result that tab characters are inserted at the front of the line or between the label and mnemonic and between the mnemonic
and the operands and between the operands and any comment. Of course, if any carriage return (ENTER) character is
detected at any time then the transfer is finished and control returned to the editor.
This compression process is transparent to the user who may simply use tab control characters (CAPS SHIT 8) to produce a
neatly tabulated textfile which, at the same time, is economic on storage.
Note that spaces are not compressed within comments and spaces should not be present within a label, mnemonic or
operand field.
The editor is entered automatically when GENS3 is executed and displays the message:

Copyright Hisoft 1983,84


All rights reserved
followed by the editor prompt '>'.
In response to the prompt you may enter a command line of the following format:
C N1,N2,S1,S2 followed by ENTER
C
N1
N2
S1
S2

is
is
is
is
is

the command
a number in
a number in
a string of
a string of

to be executed (see Section 6.3.1.3.2 below).


the range 1-32767 inclusive.
the range 1-32767 inclusive.
characters with a maximum length of 20.
characters with a maximum length of 20.

The comma is used to separate the various arguments (although this can be changed - see the 'S' command) and spaces are
ignored, except within the strings. None of the arguments are mandatory although some of the commands (e.g. the 'D'elete
command) will not proceed without N1 and N2 being specified. The editor remembers the previous numbers and strings
that you entered and uses these former values, where applicable, if you do not specify a particular argument within the
command line. The values of N1 an N2 are initially set to 10 and the strings are initially empty. If you enter an illegal
command line such as F-1,100,HELLO then the line will be ignored and the message 'Pardon?' displayed - you should
retype the line correctly e.g. F1,100,HELLO. This error message will also be displayed if the length of S2 exceeds 20; if the
length of S1 is greater than 20 then any excess characters are ignored.
Commands may be entered in upper or lower case.
While entering a command line certain key combinations may be used to edit the line viz. CAPS SHIFT 5 to delete to the
beginning of the line, CAPS SHIFT 8 to advance the cursor to the next tab position, CAPS SHIT 0 to delete the previous
character.
The following sub-section details the various commands available within the editor - note that wherever an argument is
enclosed by the symbols '< >' then that argument must be present for the command to proceed.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE


6.3.1.3.2.

6.3.1.3.2.1.

115

The Editor Commands

Text Insertion.

Text may be inserted into the textfile either by typing a line number, a space and then the required text or by use of the 'I'
command. Note that if you type a line number followed by ENTER (i.e. without any text) then that line will be deleted
from the text if it exists. Whenever text is being entered CAPS SHIFT 5 (delete to the beginning of the line), CAPS SHIFT
8 (go to the next tab position) and CAPS SHIFT 1 (return to the command loop) may be employed.
The DELETE (CAPS SHIFT 0) key will produce a destructive backspace (but not beyond the beginning of the text line).
Text is entered into an internal buffer within GENS3 and if this buffer should become full then you will be prevented from
entering any more text - you must then use CAPS SHIFT 0 or CAPS SHIFT 5 to free space in the buffer.
If, during text insertion, the editor detects that the end of text is nearing the top of RAM it displays the message 'Bad
Memory!'. This indicates that no more text can be inserted and that the current textfile, or at least part of it, should be saved
to tape for later retrieval.
Command: I n,m
Use of this command gains entry to the automatic insert mode: you are prompted with line numbers starting at n and
incrementing in steps of m. You enter the required text after the displayed line number, using the various control codes if
desired and terminating the text line with ENTER. To exit from this mode use CAPS SHIFT 1.
If you enter a line with a line number that already exists in the text then the existing line will be deleted and replaced with
the new line, after you have pressed ENTER. If the automatic incrementing of the line number produces a line number
greater than 32767 then the Insert mode will exit automatically.
If, when typing in text, you get to the end of a screen line without having entered 64 characters (the buffer size) then the
screen will be scrolled up and you may continue typing on the next line - an automatic indentation will be given to the text
so that the line numbers are effectively separated from the text.

6.3.1.3.2.2.

Text Listing.

Text may be inspected by use of 'L' command; the number of lines displayed at any one time during the execution of this
command is fixed initially but may be changed through use of the 'K' command.
Command: L n,m
This lists the current text to the display device from line number n to line number m inclusive. The default value for n is
always 1 and default value for m is always 32767 i.e. default values are not taken from previously entered arguments. To
list the entire textfile simply use 'L' without any arguments. Screen lines are formatted with a left hand margin so that the
line number is clearly displayed. Tabulation of the line is automatic, resulting in a clear separation of the various fields with
the line. The number of screen lines listed on the display device may be controlled through use of the 'K' command - after
listing a certain number of lines the list will pause (if not yet at line number m), hit CAPS SHIFT 1 to return to the main
editor loop or any other key to continue the listing.
Command: K n
'K' sets the number of screen lines to be listed to the display device before the display is paused as described in 'L' above.
The value (n MOD 256) is computed and stored. For example use K5 if you wish a subsequent 'L'ist to produce five screen
lines at a time.

6.3.1.3.2.3.

Text Editing

Once some text has been created there will inevitably be a need to edit some lines. Various commands are provided to
enable line to be amended, deleted, moved and renumbered:

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

116

Dr. Gilles OLIVE

Command: D <n,m>
All lines from n to m inclusive are deleted from the textfile. If m<n, or less than two arguments are specified, then no action
will be taken; this is to help prevent careless mistakes. A single line may be deleted by making m=n; this can also be
accomplished by simply typing the line number followed by ENTER.
Command: M n,m
This causes the text at line n to be entered at line m deleting any text that already exists there. Note that line n is left alone.
So this command allows you to 'M'ove a line of text to another position within the textfile. If line number n does not exist
then no action is taken.
Command: N <n,m>
Use of the 'N' command causes the textfile to be renumbered with a first line number of n and in line number steps of m.
Both n and m must be present and if the renumbering would cause any line number to exceed 32767 then the original
numbering is retained.
Command: F n,m,f,s
The text existing within the line range n < x < m is searched for an occurrence of the string f - the 'find' string. If such an
occurrence is found then the relevant text line is displayed and the Edit mode is entered - see below. You may then use
commands within the Edit mode to search for subsequent occurrences of the string f within the defined line range or to
substitute the string s (the 'substitute' string) for the current occurrence of f and then search for the next occurrence of f; see
below for more details.
Note that the line range and the two strings may have been set up previously by any other command so that it may only be
necessary to enter 'F' to initiate the search - see the example in Section 6.3.1.3.3 for clarification.
Command: E n
Edit the line with line number n. If n does not exist then no action is taken; otherwise the line is copied into a buffer and is
displayed again underneath the line and the Edit mode is entered. All subsequent editing takes place within the buffer and
not in the text itself; thus the original line can be recovered at any time.
In this mode a pointer is imagined moving through the line (starting at the first character) and various sub-commands are
supported which allow you to edit the line. The sub-commands are:
' ' (space) - increment the text pointer by one i.e. point to the next character in the line. You cannot step beyond the end of
the line.
CAPS SHIFT 0 - decrement the text pointer by one to point at the previous character in the line. You cannot step
backwards beyond the first character in the line.
CAPS SHIFT 8 - step the text pointer forwards to the next tab position on each screen line.
ENTER - end the edit of this line keeping all the changes made.
Q - quit the edit of this line i.e. leave the edit ignoring all the changes made and leaving the line as it was before the edit
was initiated.
R - reload the edit buffer from the text i.e. forget all changes made on this line and restore the line as it was originally.
L - list the rest of the line being edited i.e. the remainder of the line beyond the current pointer position. You remain in the
Edit mode with the pointer re-positioned at the start of the line.
K - kill (delete) the character at the current pointer position.
Z - delete all the characters from (and including) the current pointer position to the end of the line.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

117

Dr. Gilles OLIVE

F - find the next occurrence of the 'find' string previously defined within a command line (see the 'F' command above). This
sub-command will automatically exit the edit on the current line (keeping the changes) if it does not find another
occurrence of the 'find' string in the current line. If an occurrence of the 'find' string is detected in a subsequent line (within
the previously specified line range) then the Edit mode will be entered for the line in which the string is found. Note that
the text pointer is always positioned at the start of the found string.
S - substitute the previously defined 'substitute' string for the currently found occurrence of the 'find' string and then
perform the sub-command 'F' i.e. search for the next occurrence of the 'find' string. This, together with the above 'F' subcommand, is used to step through the textfile optionally replacing occurrences of the 'find' string with the 'substitute' string
- see Section 6.3.1.3.3 for an example.
I - insert characters at the current pointer position. You will remain in this sub-mode until you press ENTER - this will
return you to the main Edit mode with the pointer positioned after the last character inserted. Using CAPS SHIFT 0
(DELETE) within this sub-mode will cause the character to the left of the pointer to be deleted from the buffer while the
use of CAPS SHIFT 8 will advance the pointer to the next tab position, inserting spaces.
X - this advances the pointer to the end of the line and automatically enters the insert sub-mode detailed above.
C - change sub-mode. This allows you to overwrite the character at the current pointer position and then advances the
pointer by one. You remain in the change sub-mode until you press ENTER whence you are taken back to the Edit mode
with the pointer positioned after the last character you changed. CAPS SHIFT 0 within this sub-mode simply decrements
the pointer by one i.e. moves it left while CAPS SHIFT 8 has no effect.

6.3.1.3.2.4.

Tape/Microdrive Commands

Text may be saved to tape/microdrive or loaded from tape/microdrive using the commands 'P', 'G' and 'T'. Object code may
be saved to tape/microdrive using the 'O' command.

Command: P n,m,s
The line range defined by n < x < m is saved to tape or microdrive under the filename specified by the string s. The text
will be saved to microdrive if the filename begins with a drive number followed by a colon (':'). Remember that these
arguments may have been set by a previous command. Examples:
P10,200,EXAMPLE
P500,900,1:TEST

saves lines 10-200 to tape as EXAMPLE


saves lines 500-900 to microdrive 1

Before entering this command make sure that your tape recorder is switched on and in RECORD mode, if saving to tape.
Do not use this command if you wish, at a later stage, to 'Include' the text from tape - use the 'T' command instead. If you
intend to 'include' from microdrive then you should use this 'P' command.
When 'P'utting to microdrive and the filename you have specified already exists on the cartridge, you will be asked:
File Exists Delete (Y/N)?
answer Y to delete the file and continue saving or any other key to return to the editor without saving the file.
Command: G,,s
The tape or microdrive is searched for a file with a filename of s; when found, it is loaded at the end of the current text. If a
null string is specified as the filename then the first textfile on the tape is loaded.
For microdrive, you must specify a filename and it should begin with a drive number followed by a colon.
If using cassette, after you have entered the 'G' command, the message 'Start tape...' is displayed - you should now press
PLAY on your recorder. A search is now made for a textfile with the specified filename, or the first textfile if a null
filename is given. If a match is made then the message 'Using filename' is displayed, otherwise 'Found filename' is shown
and the search of the tape continues.
If using microdrive and the specified file cannot be found then the message 'Absent' is displayed.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

118

Note that if any textfile is already present in the memory then the textfile that is loaded from tape will be appended to the
existing file and the whole file will be renumbered starting with line 1 in steps of 1.
Command: T n,m,s
Dump out a block of text, between the line numbers n and m inclusive, to tape in a format suitable for inclusion at a later
stage via the assembler command *F - see Section 6.3.1.2.10. The file is dumped with the filename s. The dump takes place
immediately you have pressed ENTER so you should ensure that your tape recorder is ready to record before entering this
command line. If you intend to include from microdrive then use the 'P' command to save the text, as usual, and not this 'T'
command. Note that this command is to be used only if you want to assemble the text from tape at a later stage.
Command: O,,s
Dump out your object code to cassette or microdrive. The filename s can be up to 8 characters in length and should begin
with a drive number (1-8) and a colon if you wish to save the object code to microdrive.
Only the last 'block' of code produced by the assembler can be saved in this way i.e. if you have more than one ORG
directive in your source program then only the code produced after the last ORG is saved.
Code must have been produced in memory before it can be saved using 'O'.

6.3.1.3.2.5.

Assembling and Running from the Editor.

Command: A
This causes the text to be assembled from the first line in the textfile. See Section 6.3.1.2 for further details.

Command: R
If the source has been assembled without errors and an execute address has been specified by the use of the ENT assembler
directive then the 'R' command may be used to execute the object program. The object program can use a RET (#C9)
instruction to return to the editor so long as the stack is in the same position at the end of the execution of the program as it
was at the beginning. Note that ENT will have no effect if Option 16 has been specified for the assembly.
Before entering the code, interrupts are enabled and register IY is loaded with the value #5C3A.

6.3.1.3.2.6.

Other Commands.

Command: B
This simply returns control to the operating system. To re-enter the assembler use either a cold or a warm start - see Section
6.3.1.1.
Command: C
This allows you to configure the size of the Include and Macro buffers.
The include buffer is the buffer in which text is held when assembling directly from cassette or Microdrive - the larger this
buffer, the more text that will be read in from cassette or microdrive at one go and therefore the faster the assembly will
proceed. On the other hand, more memory is used. Thus, there is a compromise to be made between speed of assembly and
use of memory; the 'C' command allows you to control this tradeoff by giving you the opportunity of setting the size of the
Include buffer.
The Macro buffer is used to hold the text of any macro definitions that you may use.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

119

The 'C' command prompts you to enter the 'Include buffer' size and then the 'Macro buffer' size. In both cases simply enter
the number of bytes (in decimal) that you wish to allocate, followed by ENTER. If you press ENTER by itself without
entering a number then no action is taken. If you specify an Include buffer size then the size is forced to be a minimum of
256 bytes. You may abort the command using CAPS SHIFT 1.
Please note that 'C' effectively performs a cold start on your text, deleting it. Thus, remember to save any existing text
before using the 'C' command. It is best to allocate the buffers as large as you will need them at the start of a session.
Command: Q
This command allows you to convert textfiles produced by GENS1 to the compressed text format of GENS3. Simply load
up the GENS1 textfile, using the 'G' command, use the 'Q' command to convert the file and then dump the compressed file
out using the 'P' command. 'Q' takes no arguments and may take a substantial time to complete the conversion of the file.
Command: S,,d
This command allows you to change the delimiter which is taken as separating the arguments in the command line. On
entry to the editor the comma ',' is taken as the delimiter; this may be changed by the use of the 'S' command to the first
character of the specified string d. Remember that once you have defined a new delimiter it must be used (even within the
'S' command) until another one is specified. Please do not confuse this command with the 'S'ubstitute sub-command within
edit mode.
Note that the separator may not be a space.
Command: V
The 'V' command displays the current values of N1, N2, S1 and S2 plus the current command delimiter i.e. the two default
line numbers, the default strings and the delimiter. This is useful before entering any command in which you are going to
use default values, to check that these values are correct.

Command: W n,m
The 'W' command causes the section of text between lines n and m inclusive to be output to the printer. If both n and m are
defaulted then the whole textfile will be printed. The printing will pause after the number of lines set by the 'K' command press any key to continue printing.
Command: X
'X' simply causes the start and end address of the textfile to be displayed in decimal. This is useful if you wish to save the
text from within BASIC, or if you want to see how much memory you have left after the textfile. GENS3 always expects
the text to start at the first address given by the 'X' command and holds the end address of the text in location TEXTEND
which is at 'Start of GENS3 + 54'. Thus, if you wish to 'patch in' a textfile (perhaps produced by MONS3) you must move
the textfile to the address specified by the first address displayed by the 'X' command, modify TEXTEND to contain the
end address of the file and finally enter GENS3 via a warm start. For example, say you have generated a textfile in the
correct place and that it ends (the address after the final end-of-line marker) at #9A02. Then, assuming that you have loaded
GENS3 at 24064, you should, from BASIC, POKE 24064+54,2 (#02) and POKE 24064+55,154 (#9A) and then enter
GENS3 by RANDOMIZE USR 24125. You will now be able to work with the textfile normally from within the editor.
Command: H,,s
Allows you to verify a textfile that has been saved to microdrive. Simply use H,,n:filename where n is the drive number and
filename is the name you gave to the textfile on that drive. The file will be opened and each record in turn inspected to
make sure that it can be read from the drive; record numbers are displayed as they are checked. If a particular record
number fails the check then 'File not found' will be displayed and control returned to BASIC. If verification is successful
then control will be returned to the assembler's editor.

6.3.1.3.3.

CHIMIE INDUSTRIELLE

An Example of the Use of the Editor.

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

120

Let us assume that you have typed in the following program (using I10,10):
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210

*h

16 BIT RANDOM NUMBERS

;INPUT: HL contains previous random number or seed.


;OUTPUT: HL contains new randon number
Random
PUSH BC

PUSH

AF

PUSH
ADD
ADD
ADD
ADD
ADD
ADD
PIP
ADD
LD
ADD
POP
POP
REY

HL
HL,HL
HL,HL
HL,HL
HL,HL
HL,HL
HL,HL
BC
HL,DE
DE,41
HL,DE
BC
AF

;save registers

;*2
;*4
;*8
;*16
;*32
;*64
;old random number

;restore registers

This program has a number of errors which are as follows:


Line 10:
Line 40:
Line 70:
Line 150:
Line 160:
Line 210:

a lower case 'h' has been used in the assembler command *H.
'randon' instead of 'random'.
PUSH BC starts in the label field.
'PIP' instead of 'POP'.
needs a comment (not an error - merely style).
'REY' should be 'RET'.

Also 2 extra lines of ADD HL,HL should be added between lines 140 and 150 and all references to the register pair DE in
lines 160 to 180 should be to register pair BC.
To put all this right we can proceed as follows:
E10 ENTER
F40,40,randon,random ENTER
E70 ENTER
I142,2 ENTER

F150,150,PIP,POP ENTER
E160 ENTER
F160,180,DE,BC ENTER
E210 ENTER
N10,10 ENTER

then _(space) C(enter change mode)


H ENTER ENTER
then the 'S' sub-command.
then I(insert mode) _______(7 spaces)
ENTER ENTER
142 _______ADD HL,HL
;*128
144 _______ADD HL,HL
;*256
CAPS SHIFT 1
then the 'S' sub-command.
then X __ ;*257 + 41 ENTER ENTER
then repeated use of the sub-command 'S'.
C (change mode) T ENTER ENTER
to renumber the text.

You are strongly recommended to work through the above example actually using the editor.

6.3.1.4.

APPENDIX 1 ERROR NUMBERS AND THEIR MEANINGS.

*ERROR* 1

Error in the context of this line.

*ERROR* 2

Mnemonic not recognized.

*ERROR* 3

Statement badly formed.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

121

*ERROR* 4

Symbol defined more than once.

*ERROR* 5

Line contains an illegal character i.e. one which is not valid in


a particular context.

*ERROR* 6

One of the operands in this line is illegal.

*ERROR* 7

A symbol in this line is a reserved word.

*ERROR* 8

Mismatch of registers.

*ERROR* 9

Too many registers in this line

*ERROR* 10

An expression that should evaluate to 8 bits evaluates to more


than 8 bits.

*ERROR* 11

The instructions JP (IX+n) and JP (IY+n) are illegal.

*ERROR* 12

Error in the formation of an assembler directive.

*ERROR* 13

Illegal forward reference i.e. an EQUate has been made to a symbol


which has not yet been defined.

*ERROR* 14

Division by zero.

*ERROR* 15

Overflow in a multiplication operation.

*ERROR* 16

Nested macro definition.

*ERROR* 17

This identifier is not a macro.

*ERROR* 18

Nested macro call.

*ERROR* 19

Nested conditional statement.

Bad ORG!

An ORG has been made to an address that would corrupt GENS, its
textfile or the symbol table. Control returns to the editor.

Out of Table Space!


Occurs during the first pass if insufficient memory has been
allowed for the symbol table. Control returns immediately to the
editor.
Bad Memory!

No room for any more text to be inserted i.e. the end of text is
near the top of RAM. You should save the current textfile or part
of it.

6.3.1.5.

APPENDIX 2 RESERVED WORDS, MNEMONICS ETC.

The following is a list of the reserved words within GENS. These symbols may not be used as labels although they may
form part of a label. Note that all the reserved words are composed of capital letters.
A

AF

AF'

BC

DE

HL

IX

IY

SP

NC

NZ

PE

PO

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

122

There now follows a list of the valid Z80 mnemonics, assembler directives and assembler commands. Note that these also
must be entered in capital letters.
ADC

ADD

AND

BIT

CALL

CCF

CP

CPD

CPDR

CPI

CPIR

CPL

DAA

DEC

DI

DJNZ

EI

EX

EXX

HALT

IM

IN

INC

IND

INDR

INI

INIR

JP

JR

LD

LDD

LDDR

LDI

LDIR

NEG

NOP

OR

OTDR

OTIR

OUT

OUTD

OUTI

POP

PUSH

RES

RET

RETI

RETN

RL

RLA

RLC

RLCA

RLD

RR

RRA

RRC

RRCA

RRD

RST

SBC

SCF

SET

SLA

SRA

SRL

SUB

XOR

DEFB

DEFM

DEFS

DEFW

ELSE

END

ENT

EQU

IF

ORG

MAC

ENDM

*D

*E

*H

*L

*S

*C

*F

*M

6.3.1.6.

APPENDIX 3 A WORKED EXAMPLE.

There follows an example of a typical session using GENS3 - if you are a newcomer to the world of assembler programs or
if you are simply a little unsure how to use the editor/assembler then we urge you to work through this example carefully.
Note that <ENTER> is used to indicate that you should press ENTER on the keyboard.
Session objective:
To write and test a fast integer multiply routine, the text of which is to be saved to tape using the editor's 'T' command so
that it can easily be 'included' from tape in future programs.
Session workplan:
1. Write the multiply routine as a subroutine and save it to tape using the editor's 'P' command so that it can be easily
retrieved and edited during this sessions, should bugs be present.
2. De-bug the multiply subroutine, editing as necessary.
3. Save the de-bugged routine to tape, using the editor's 'T' command so that the routine may be 'included' from tape in
other programs.
Before we start we must load GENS3 into the computer - do this by typing LOAD"" CODE 26000 ENTER to load the
assembler at address 26000. Now type RANDOMIZE USR 26000 ENTER. You will now be prompted with a '>' sign - you
are in editor mode ready to create assembly programs.
Stage 1 - write the integer multiply routine.
We use the editor's 'I' command to insert the text using CAPS SHIFT 8 (the tab character) to obtain a tabulated listing. We
do not need to use CAPS SHIFT 8, a list of the text will always perform the tabulation for us. We have not indicated where
tabs have been used below but you can assume that they are used before the mnemonic and between the mnemonic and the
operand. Note that the addresses shown in the example assembler listings that follow may not correspond to those produced
on your machine; they serve an illustrative purpose only.
>I10,10 <ENTER>

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

123

10 ; A fast integer multiply <ENTER>


20 ; routine. Multiplies HL <ENTER>
30 ; by DE. Return the result <ENTER>
40 ; in HL. C flag set on an <ENTER>
50 ; overflow. <ENTER>
60 <ENTER>
70 ;
ORG
#7F00 <ENTER>
80 <ENTER>
90 Mult
OR
A <ENTER>
100
SBC
HL,DE
;HL>DE? <ENTER>
110
ADD
HL,DE <ENTER>
120
JR
NC,Mu1
;yes <ENTER>
130
EX
DE,HL <ENTER>
140 Mu1
OR
D <ENTER>
150
SCF
;overflow if <ENTER>
160
RET
NZ
;DE>255 <ENTER>
170
OR
E
;times 0? <ENTER>
180
LD
E,D <ENTER>
190
JR
NZ,MU4
;no <ENTER>
200
EX
DE,HL
;0 <ENTER>
210
RET
<ENTER>
220 <ENTER>
230 ;Main routine. <ENTER>
240 <ENTER>
250 Mu2
EX
DE,HL <ENTER>
260
ADD
HL,DE <ENTER>
270
EX
DE,HL <ENTER>
280 Mu3
ADD
HL,HL <ENTER>
290
RET
C
;overflow <ENTER>
300 Mu4
RRA <ENTER>
310
JR
NC,Mu3 <ENTER>
320
OR
A <ENTER>
330
JR
NZ,Mu2 <ENTER>
340
ADD
HL,DE <ENTER>
350
RET <ENTER>
360 CAPS SHIFT 1
>P10,350,Mult <ENTER>
>
The above will create the text of the routine and save it to tape. Remember to have your tape recorder running and in
RECORD mode before issuing the 'P' command.
Stage 2 - de-bug the routine.
First, let's see if the text assembles correctly. We will use option 6 so that no listing is produced and no object code
generated.
>A <ENTER>
Table size: <ENTER>
Options: 6 <ENTER>

{default the symbol table size}

*HISOFT GENS3 ASSEMBLER*


Copyright Hisoft 1983,84
All Rights Reserved
Pass 1 errors: 00

Pass 2 errors: 00
*WARNING* MU4
Table used:

absent
74 from

CHIMIE INDUSTRIELLE

161

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

124

>
We see from this assembly that we have made a mistake in line 190 and entered MU4 instead of Mu4 which is the label we
wish to branch to. So edit line 190:
>F190,190,MU4,Mu4 <ENTER>
190
JR
NZ, {now use the 'S' sub-command}
>
Now assemble the text again and you should find that it assembles without errors. So now we must write some code to test
the routine:
>N300,10 <ENTER>
{renumber so that we can write some more text}
>I10,10 <ENTER>
10 ;Some code to test <ENTER>
20 ;the Mult routine. <ENTER>
30 <ENTER>
40
LD
HL,50 <ENTER>
50
LD
DE,20 <ENTER>
60
CALL
Mult
;Multiply <ENTER>
70
LD
A,H
;o/p result <ENTER>
80
CALL
Aout <ENTER>
90
LD
A,L <ENTER>
100
CALL
Aout <ENTER>
110
RET
;Return to editor <ENTER>
120 <ENTER>
130 ;Routine to o/p A in hex <ENTER>
140 <ENTER>
150 Aout
PUSH
AF <ENTER>
160
RRCA
<ENTER>
170
RRCA
<ENTER>
180
RRCA
<ENTER>
190
RECA
<ENTER>
200
CALL
Nibble <ENTER>
210
POP
AF <ENTER>
220 Nibble AND
%1111 <ENTER>
230
ADD
A,#90 <ENTER>
240
DAA <ENTER>
250
ADC
A,#40 <ENTER>
260
DAA <ENTER>
270
LD
IY,#5C3A ; for ROM <ENTER>
280
RST
#10 ; ROM call <ENTER>
290
RET <ENTER>
300 CAPS SHIFT 1
>
Now assemble the test routine and the Mult routine together.
>A <ENTER>
Table size: <ENTER>
Options: 6 <ENTER>
*HISOFT GENS3 ASSEMBLER*
Copyright HISOFT 1983,84
All rights reserved
7EAC 190
*ERROR* 02

RECA
{hit any key to continue}

Pass 1 errors: 01
Table used:

88 from

CHIMIE INDUSTRIELLE

210

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

125

>
We have an error in our routine; RECA should be RRCA in line 190. So:
>E190
190
RECA
190 _______C {enter change mode} R <ENTER> <ENTER>
Now assemble again, using simply option 4 (no list), and then the text should assemble correctly. Assuming it does, we are
now in a position to test the working of our Mult routine so we need to tell the editor where it can execute the code from.
We do this with the ENT directive:
>35

ENT

$ <ENTER>

Now assemble the text again and the assembly should terminate correctly with the messages:
Table used:
Executes: 32416

88 from

211

>
or something similar. Now we can run our code using the editor's 'R' command. We should expect it to multiply 50 by 20
producing 1000 which is #3E8 (in hexadecimal).
>R <ENTER>
0032>
It doesn't work! Why not ? List the lines 380 to 500 (L380,500). You will see that at line 430 the instruction is an OR D
followed, effectively, by a RET NZ. What this is doing is a logical OR between the D register and the accumulator A and
returning with an error flag set (the C flag) if the result is non-zero. The object of this is to ensure that DE<256 so that the
multiplication does not overflow - it does this by checking that D is zero ... but the OR will only work correctly in this case
if the accumulator A is zero to start with, and we have no guarantee that this is so. We must ensure that A is zero before
doing the OR D, otherwise we will get unpredictable overflow with the higher number returned as the result. From
inspection of the code we see that the OR A at line 380 could be made into a XOR A thus setting the flags for the SBC
HL,DE instruction and setting A to zero. So:
>E380 <ENTER>
380 Mult
OR
A
380 ________I {enter insert mode}X <ENTER> <ENTER>
Now assemble again (option 4) and run the code, using 'R'. The answer should now be correct - #3E8.
We can further check the routine by editing lines 40 and 50 to multiply different numbers and then assembling and running
- you should find that the routine works perfectly.
Now we have perfected the routine we can save it to tape in 'Include' format:
>T300,999,Mult <ENTER>
Remember to start the recorder in RECORD mode before pressing ENTER.
Once the routine has been saved like this it may be included in a program as shown below:
500
RET
510
520 ;Include the Mult routine here
530
540 *F Mult
550
560 ;The next routine.
When the above text is assembled the assembler will ask you to 'Start tape...' when it gets to line 540 on both the first and
second pass. Therefore you should have the Mult dump cued up on the tape in both cases. This will normally mean

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

126

Dr. Gilles OLIVE

rewinding the tape after the first pass. You could record two dumps of Mult on the tape, following each other and use one
for the first pass and the other for the second pass.
Please study the above example carefully and try it out for yourself.

6.3.1.7.

APPENDIX 4 AN EXTENDED CAT PROGRAM

We present below an assembly listing of a program that produces a CATalogue of a Microdrive cartridge similar to that
produced by ZX BASIC'S CAT command but with extra information viz.
Type of file:
D - a data or print-type file
P - a BASIC program file
B - a CODE file
S - a string array
N - a numeric array
Also, for a CODE file, the length and start address are displayed in decimal while, for a program file, the length and
autoexecution address are displayed in decimal.
To use the program either type in the hex codes directly (using MONS3 or POKE from BASIC) or use GENS3 to assemble
the source of the program. Note that the program is positioned at 60000 - you may of course change this and re-assemble.
Once the code is in the Spectrum's memory you may execute it from within BASIC or path it into the GENS3 editor.
To use the program from within BASIC, first POKE the Microdrive number that you wish to catalogue into location 60345
(assuming that the code starts at 60000) and then RANDOMIZE USR 60000.
To use the catalogue program from within GENS3 you must patch the dummy 'Z' command to jump to the CATalogue
code. To do this patch, load up GENS3 normally and then POKE the address of the extended CATalogue routine + 2 into
locations Start of GENS3 + 7790 and Start of GENS3 + 7791 (low order byte first). For example, say you have loaded
GENS3 at 26000 and the extended CATalogue routine is at 60000. Then to effect the patch simply POKE 33790,98 and
POKE 33791,234 and then enter GENS3 in the normal way. You can then use Zn<ENTER> from within the editor to
CATalogue drive number n.
Below is the listing of the extended CATalogue program:
Microdrive Extended CATalogue 28 February 1984

000D
0002
0043
15D4
1655
5C16
5C3A
5C4F

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

*H Microdrive Extended CATalogue


28 February 1984
*C+
;Produced with Hisoft's GEN assembler
;Copyright Hisoft 1984
;With many thanks to Andre Pennell for his
;Microdrive 'bible'and the Stream 14 routine
;Equates
CR

EQU

13

PRINT EQU
RECFLG EQU

2
67

WAIT_K EQU
MAKE_S EQU

#15D4
#1655

STRMS EQU
ERR_NR EQU
CHANS EQU

#5C16
#5C3A
#5C4F

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5C53
5CD6
5CD8
5CDA
5CDC
5CE6
5CE7
5CE9
5CEB
5CED
0022
0023
0031
0032

1C81

EA60

EA60 1817

EA62
EA63
EA64
EA65
EA66
EA69
EA6A
EA6B
EA6C
EA6D
EA6F
EA71
EA73
EA75
EA76

E1
54
5D
E5
21811C
19
7E
23
B6
2002
3E01
E60F
2600
6F
22B9EB

EA79 210AEC
EA7C 2208EC
EA7F FD213A5C
EA83 21C5EB
EA86 0634
EA88 CD9AEB

EA8B
EA8E
EA8F
EA90
EA93

2A535C
2B
E5
010B00
CD5516

Dr. Gilles OLIVE


22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84

PROG

EQU

#5C53

D_STR1
S_STR1
N_STR1
T_STR1
HD_00
HD_0B
HD_0D
HD_0F
HD_11

EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU

#5CD6
#5CD8
#5CDA
#5CDC
#5CE6
#5CE7
#5CE9
#5CEB
#5CED

OPEN_M
CLOSE_
NEWVAR
SHADOW

EQU
EQU
EQU
EQU

#22
#23
#31
#32

127

;For GENS3M2 only.


NUM1of EQU

ORG

7297

60000

;BASIC entry point


JR

BasEnt

;GENS3M2 entry point


POP
LD
LD
PUSH
LD
ADD
LD
INC
OR
JR
LD
NumSet AND
LD
LD
LD

HL
D,H
E,L
HL
HL,NUM 1off
HL,DE
A,(HL)
HL
(HL)
NZ,NumSet
A,1
%00001111
H,0
L,A
(DRIVE),HL

;Initialise
BasEnt LD
LD
LD

HL,SPACE
(POINTER),HL
IY,#5C3A

LD
HL,SIGNON
LD
B,SIGNEND-SIGNON
CALL WRstring
;Set upnew channel and attach to Stream 14

CHIMIE INDUSTRIELLE

LD
DEC
PUSH
LD
CALL

HL,(PROG)
HL
HL
BC,11
MAKE_SPACE

25/03/2005

1re Edition

Tome TP
EA96
EA99
EA9A
EA9B
EA9C
EA9D
EA9E
EA9F
EAA0
EAA1
EAA4
EAA7
EAA9
EAAA
EAAB
EAAF
EAB0
EAB2

2191EB
D1
D5
EB
73
23
72
23
EB
21FDEB
010900
EDB0
E1
23
ED4B4F5C
B7
ED42
22325C

EAB5 D9
EAB6 E5
EAB7 D9
EAB8 CF
EAB9 31
EABA
EABC
EABF
EAC2
EAC5
EAC8
EACB
EACC
EACD

EACE
EAD1
EAD3
EAD6
EAD8
EAD9
EADA
EADB
EADD
EADF
EAE0
EAE2
EAE3
EAE6
EAE7
EAE8
EAE9
EAEC
EAED
EAEE
EAEF
EAF2
EAF5

3E0E
32D85C
2AB9EB
22D65C
2A06EC
22ED5C
FB
CF
32

210AEC
060B
CD9AEB
060F
C5
23
7E
FE0D
2879
2B
060B
E5
CD9AEB
E3
23
EB
21DC5C
73
23
72
2AB9EB
22D65C
210A00

Dr. Gilles OLIVE


85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147

LD
POP
PUSH
EX
LD
INC
LD
INC
EX
LD
LD
LDIR
POP
INC
LD
OR
SBC
LD

128

HL,CH14out
DE
DE
DE,HL
(HL),E
HL
(HL),D
HL
DE,HL
HL,C14INFO
BC,11-2
HL
HL
BC,(CHANS)
A
HL,BC
(STRMS+28),HL

;Now read in bare catalogue


EXX
PUSH HL
EXX
RST 8
DEFB NEWVARS
LD
LD
LD
LD
LD
LD
EI
RST
DEFB

A,14
(S_STR1),A
HL,(DRIVE)
(D_STR1),HL
HL,(CAT)
(HD_11),HL
8
SHADOW

;Now process bare catalogue


LD
LD
CALL
CatL1 LD
CatLoo PUSH
INC
LD
CP
JR
DEC
LD
PUSH
CALL
EX
INC
EX
LD
LD
INC
LD
LD
LD
LD

CHIMIE INDUSTRIELLE

HL,SPACE
B,11
WRstring
B,15
BC
HL
A,(HL)
CR ;finished?
Z,CatEnd
HL
B,11
HL
WRstring
(SP),HL
HL
DE,HL
HL,T_STR1
(HL),E
HL
(HL),D
HL,(DRIVE)
(D_STR1),HL
HL,10

25/03/2005

1re Edition

Tome TP
EAF8
EAFB
EAFC
EAFD
EAFE
EB01
EB05
EB07
EB09
EB0C
EB0E
EB10
EB11
EB14
EB15
EB16
EB17
EB18
EB1B
EB1C
EB1E
EB1F
EB20
EB23
EB26
EB27
EB28
EB29
EB2B
EB2C
EB2D
EB2E
EB2F
EB30
EB31
EB32
EB33
EB36
EB37
EB38
EB39
EB3C
EB3E
EB40
EB42
EB43
EB44
EB45
EB46
EB49
EB4A
EB4B
EB4C
EB4F
EB50
EB51
EB52
EB53
EB55

22DA5C
FB
CF
22
CDB5EB
DDCB4356
2007
3E44
CDACEB
1841
DDE5
D1
215200
19
EB
1A
13
21F9EB
4F
0600
09
7E
CDACEB
CDB5EB
EB
79
B7
2013
23
23
23
23
5E
23
56
23
CD66EB
5E
23
56
CD66EB
1811
FE03
200D
5E
23
56
23
CD66EB
5E
23
56
CD66EB
CF
23
E1
C1
1083
C3D6EA

EB58 C1
EB59 2B
EB5A 0605

Dr. Gilles OLIVE


148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210

LD
EI
RST
DEFB
CALL
BIT
JR
LD
CALL
JR
NotPri PUSH
POP
LD
ADD
EX
LD
INC
LD
LD
LD
ADD
LD
CALL
CALL
EX
LD
OR
JR
INC
INC
INC
INC
LD
INC
LD
INC
CALL
LD
INC
LD
CALL
JR
NotPro CP
JR
LD
INC
LD
INC
CALL
LD
INC
LD
CALL
CatBac RST
DEFB
POP
POP
DJNZ
JP

(N_STR1),HL

CatEnd POP
DEC
LD

BC
HL
B,5

CHIMIE INDUSTRIELLE

129

8
OPEN_M
Space
PRINT,(IX+RECFLG)
NZ,NotPrint
A,"D"
CONOUT
CatBack
IX
DE
HL,82
HL,DE
DE,HL
A,(DE)
DE
HL,TYPETAB
C,A
B,0
HL,BC
A,(HL)
CONOUT
Space
DE,HL
A,C
A
NZ,NotProg
HL
HL
HL
HL
E,(HL)
HL
D,(HL)
HL
DEOUTS
E,(HL)
HL
D,(HL)
DEOUTS
CatBack
3
NZ,CatBack
E,(HL)
HL
D,(HL)
HL
DEOUTS
E,(HL)
HL
D,(HL)
DEOUTS
8
CLOSE_M
HL
BC
CatLoop
CatL1

25/03/2005

1re Edition

Tome TP
EB5C
EB5F
EB60
EB61
EB62
EB65

EB66
EB67
EB69
EB6A
EB6C
EB70
EB73
EB76
EB78
EB79
EB7A
EB7C
EB7E
EB7F
EB81
EB84
EB86
EB88
EB8A
EB8D
EB8F
EB90

EB91
EB94
EB95
EB96
EB99

EB9A
EB9B
EB9E
EB9F
EBA1

EBA2
EBA3
EBA4
EBA5
EBA8
EBA9
EBAA
EBAB

CD9AEB
D9
E1
D9
010000
C9

E5
DDE5
EB
0605
DD21BBEB
DD5E00
DD5601
3EFF
3C
B7
ED52
30FA
19
F630
CDACEB
DD23
DD23
10E6
CDB5EB
DDE1
E1
C9

2A08EC
77
23
2208EC
C9

7E
CDACEB
23
10F9
C9

E5
D5
C5
CD0116
C1
D1
E1
C9

EBAC F5
EBAD 3E02

Dr. Gilles OLIVE


211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273

130

CALL WRstring
EXX
POP HL
EXX
LD
BC,0
RET
;OutputDE in decimal
DEOUTS PUSH
PUSH
EX
LD
LD
DEloop LD
LD
LD
TenLoo INC
OR
SBC
JR
ADD
OR
CALL
INC
INC
DJNZ
CALL
POP
POP
RET

HL
IX
DE,HL
B,5
IX,TENTAB
E,(IX)
D,(IX+1)
A,-1
A
A
HL,DE
NC,TenLoop
HL,DE
#30
CONOUT
IX
IX
DEloop
Space
IX
HL

;Outputfor Stream14
CH14ou LD
LD
INC
LD
RET

HL,(POINTER)
(HL),A
HL
(POINTER),HL

;Writea string oflength B from (HL)


WRstri LD
CALL
INC
DJNZ
RET

A,(HL)
CONOUT
HL
WRstring

;Open a stream
ChOpen PUSH
PUSH
PUSH
CALL
POP
POP
POP
RET

HL
DE
BC
#1601
BC
DE
HL

;Output to stream 2
CONOUT PUSH AF
LD
A,2

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
EBAF
EBB2
EBB3
EBB4

CDA2EB
F1
D7
C9

274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312

EBB5 3E20
EBB7 18F3

EBB9 0100
EBBB 1027E803
EBC5
EBC6
EBE1
EBE2
EBF7
EBF9

131

Dr. Gilles OLIVE

0D
4869736F
0D
436F7079
0D0D

EBF9 504E5342
EBFD C415
EBFF 5A
EC00 28002800

EC06 581C

EC08
EC0A

CALL ChOpen
POP AF
RST #10
RET
;Output a space to stream 2
Space

LD
JR

A," "
CONOUT

;Storage
DRIVE

DEFW 1

TENTAB DEFW 10000,1000,100,10,1


SIGNON DEFB
DEFM
DEFB
DEFM
DEFB
SIGNEN EQU

CR
"Hisoft Extended CAT Listing"
CR
"Copyright Hisoft 1984"
CR,CR
$

TYPETA DEFM "PNSB"


C14INF DEFW #15C4
DEFB "Z"
DEFW #28,#28,11
;*** this value may change with new Interface 1 ROM***
CAT

DEFW #1C58

*)

;*****************************************************
POINTE DEFS 2
SPACE DEFS 512

Pass 2 errors: 00

*) 2nd issue #1C52


*) 3rd issue #1C54

HiSoft MONS3 Programmer's Manual

6.3.2.

6.3.2.1.

GETTING STARTED

MONS3 is supplied in a relocatable form; you simply load it at the address that you wish it to execute from and then enter
MONS3 via that address. If you wish to enter MONS3 again (having returned from MONS3 to BASIC) then you should
execute the address at which you originally loaded the debugger.
Example:
Say you want to load MONS3 at address #C000 (49152 decimal) - proceed as follows:
LOAD "MONS3" CODE 49152 <ENTER>
RANDOMIZE USR 49152 <ENTER>

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

132

To enter MONS3 again use:


RANDOMIZE USR 49152 <ENTER>
MONS3 is roughly 5K in length once it has been relocated but you should allow nearer 6K bytes on loading MONS3
owing to the table of relocation addresses which comes after the main code. MONS3 contains its own internal stack so that
it is a self-contained programs.
Making a Backup Copy.
Once you have loaded MONS3 into your Spectrum's memory then you can make a backup copy of the package as follows:
SAVE "MONS3" CODE xxxxx,6068 <ENTER>
to cassette
SAVE *"M";1;"MONS3" CODE xxxxx,6068 <ENTER> to Microdrive
where: xxxxx is the address at which you loaded MONS3.
Please note that we allow you to make a backup copy of MONS3 for your own use so that you can program with
confidence. Please do not copy MONS3 to give (or worse, sell) to your friends, we supply very reasonably priced software
and a full after-sales support service but if enough people copy our software we shall not be able to continue this; please
buy, don't steal.
Once you have entered MONS3 the message '*MONS3 (C) Copyright 1983*' will appear for a few seconds to be replaced
by a 'front panel' display (see the Appendix 6.3.2.3 for an example display). This consist of the Z80 registers and flags
together with their contents plus a 24 byte section of memory centered (using '>' and '<') around the current value of the
Memory Pointer which is initially set to address 0. On the top line of the display is a dis-assembly of the instruction
addressed by the Memory Pointer.
On entry to MONS3, all the addresses displayed within the Front Panel are given in hexadecimal format (i.e. to base 16);
you can change this so that the addresses are shown in decimal by using the command SYMBOL SHIFT 3 - see then next
section. Note, however, that addresses must always be entered in hexadecimal. Commands are entered from the keyboard
in response to the prompt '>' under the memory display and may be entered in upper or lower case.
Some commands, whose effect might be disastrous if used in error, require you to press SYMBOL SHIFT as well as the
command letter. Throughout this manual the use of the SYMBOL SHIFT key may be represented by the symbol '^' e.g. ^Z
means hold the SYMBOL SHIFT and Z key down together.
Comamnds take effect immediately - there is no need to terminate them with <ENTER>. Invalid commands are simply
ignored. The entire 'front panel' display is updated after each command is processed so that you can observe any results of
the particular command.
Many commands require the input of a hexadecimal number - when entering a hexadecimal number you may enter as many
hexadecimal digits (0-9 and A-F or a-f) as you wish and terminate them with any non-hex digit. If the terminator is a valid
command then the command is obeyed after any previous command has been processed. If the terminator is a minus sign '-'
then the negative of the hexadecimal number entered is returned - in two's complement form e.g. 1800- gives E800. If you
enter more than 4 digits when typing a hexadecimal number then only the last 4 typed are retained and displayed on the
screen.
If, at any stage, you wish to return to the BASIC interpreter from MONS then simply press CAPS SHIFT 1
IMPORTANT NOTE: MONS3 disables interrupts in order to ensure correct functioning - the user should ensure that
interrupts are not re-enabled during a session with MONS3.

6.3.2.2.

THE COMMANDS AVAILABLE.

The following commands are available from within MONS3. In this section, whenever ENTER is used to terminate a
hexadecimal number this in fact can be any non-hex character (see Section 6.3.2.1). Also '_' is used to denote a space where
applicable.
SYMBOL SHIFT 3

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

133

flip the number base in which addresses are displayed between base 16 (hexadecimal) and base 10 (deanery). On entry to
MONS3, addresses are shown in hexadecimal, use ^3 to flip to a decimal display and ^3 again to revert to the hexadecimal
format. This affects all addresses displayed by MONS3 including those generated by the dis-assembler but it does not
change the display of memory contents - this is always given in hexadecimal.
SYMBOL SHIFT 4 or '$'
display a page of dis-assembly starting from the address held in the Memory Pointer. Useful to look ahead on your current
position to see what instructions are coming up. Hit ^4 again to return to the 'Front Panel' display or another key to get a
further page of dis-assembly.
ENTER
increment the Memory Pointer by one so that the 24 byte memory display is now centered around an address one greater
than it was previously.
CAPS SHIFT 7
decrement the Memory Pointer by one.
CAPS SHIFT 5
decrement the Memory Pointer by eight - used to step backwards quickly.
CAPS SHIFT 8
increment the Memory Pointer by eight - used to step forwards quickly.
',' (comma)
update the Memory Pointer so that it contains the address currently on the stack (indicated by SP). This is useful when you
want to look around the return address of a called routine etc.
'G'
search memory for a specified string ('G'et a string).
You are prompted with a ':' and you should then enter the first byte for which you want to search followed by 'ENTER' now keep entering subsequent bytes (and 'ENTER') in response to the ':' until you have defined the whole string. Then just
press 'ENTER' in response to the ':', this will terminate the definition of the string and search memory, starting from the
current Memory Pointer address, for the first occurrence of the specified string. When the string is found the 'front panel'
display will be updated so that the Memory Pointer is positioned at the first character of the string. Example:
Say that you wish to search memory, starting from #8000, for occurrences of the pattern #3E #FF (2 bytes) - proceed as
follows;
M:8000 ENTER
G:3E ENTER
FF ENTER
ENTER

set the Memory Pointer to #8000


define the first byte of the string.
define the second byte of the string.
terminate the string.

After the final ENTER (or any non-hex character) 'G' proceeds to search memory from #8000 for the first occurrence of
#3E #FF. When found the display is updated - to find subsequent occurrences of the string use 'N' command.
'H'
convert a decimal number to its hexadecimal equivalent.
You are prompted with ':' to enter a decimal number terminated by any non-digit (i.e. any character other than 0..9
inclusive). Once the number has been terminated, an '=' sign is displayed on the same line followed by the hexadecimal
equivalent of the decimal number. Now hit any key to return to the command mode.
Example:
H:41472_=A200

here a space was used as the terminator.

'I'
intelligent copy.
This is used to copy a block of memory from one location to another - it is intelligent in that the block of memory may be
copied to locations where it would overlap its previous locations.
'I' prompts for the inclusive start and end addresses of the block to be copied ('First:', 'Last:') and then for the address to
which the block is to be moved ('To:'); enter hexadecimal numbers in response to each of these prompts. If the start address
is greater than the end address then the command is aborted - otherwise the block is moved as directed.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

134

'J'
execute code from a specified address.
This command prompts, via ':', for a hexadecimal number - once this is entered the internal stack is reset, the screen cleared
and execution transferred to the specified address. If you wish to return to the 'front panel' after executing code then set a
breakpoint (see the 'W' command) at the point where you wish to return to the display.
Example:
J:B000 ENTER

executes the code starting at #B000

You may abort this command before you terminate the address by using CAPS SHIFT 5. Note that 'J' corrupts the Z80
registers before executing the code; thus the machine program should make no assumptions as to the values held in the
registers. If you wish to execute code with the registers set to particular values then you should use the SYMBOL SHIFT K
command - see below.
'SYMBOL SHIFT K'
continue execution from the address currently held in the Program Counter (PC).
This command will probably be used most frequently in conjunction with the 'W' command - an example should help to
clarify this usage:
say you are single-stepping (using '^Z') through the code given below and you have reached address #8920. You are now
not interested in stepping through the subroutine at #9000 but wish to see how the flags are set up after the call to the
subroutine at #8800.
891E
8920
8923
8926
8927
892A
892D
892F
8932

3EFF
CD0090
2A0080
7E
111488
CD0088
2003
320280
211488 labl

LD
CALL
LD
LD
LD
CALL
JR
LD
LD

A,-1
#9000
HL,(#8000)
A,(HL)
DE,#8814
#8800
NZ,labl
(#8002),A
HL,#8814

Proceed as follows: set a breakpoint, using 'W', at location #892D (remember to use 'M' first to set the Memory Pointer)
and then issue a '^K' command. Execution continues from the address held in the PC which, in this case, is #8920.
Execution will then continue until the address at which the breakpoint was set (#892D) at which point the display will be
updated and you can inspect the state of flags etc. after the call to the subroutine at #8800. Then you can resume singlestepping through the code.
So '^K' is useful for executing code without first resetting the stack or corrupting the registers as 'J' does.
'L'
tabulate, or list, a block of memory starting from the address currently held in the Memory Pointer.
'L' clears the screen and displays the hexadecimal representation and ASCII equivalence of the 80 bytes of memory starting
from the current value of the Memory Pointer. Addresses will be shown in either hexadecimal or decimal depending on the
current state of the Front Panel (see ^3 above). The display consists of 20 rows with 4 bytes per row, the ASCII being
shown at the end of each row. For the purposes of the ASCII display any values above 127 are decremented by 128 and any
values between 0 an 31 inclusive are shown as '.'.
At the end of a page of the list you have the option of returning to the main 'front panel' display by pressing CAPS SHIFT 5
or continuing with the next page of 80 bytes by pressing any other key (other than CAPS SHIFT 1).
'M'
set the Memory Pointer to a specified address.
You are prompted with ':' to enter a hexadecimal address (see Section 6.3.2.1). The Memory Pointer is then updated with
the address entered and the memory display of the 'front panel' changes accordingly.
M is useful as a prelude to entering code, tabulating memory etc.
'N'
find the next occurrence of the hex string last specified by the 'G' command.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

135

'G' allows you to define a string and then searches for the first occurrence of it; if you want further occurrences of the string
then use 'N'.
'N' begins searching from the Memory Pointer and updates the memory display when the next occurrence of the string is
found.
'O'
go to the destination of a relative displacement.
The command takes the byte currently addressed by the Memory Pointer, treats it as a relative displacement and updates the
memory display accordingly.
Example:
Say the Memory Pointer is set to #6800 and that the contents of locations #67FF and #6800 are #20 and #16 respectively this could be interpreted as a JR NZ, $+24 instruction. To find out where this branch would go on a Non-Zero condition
simply press 'O' when the Memory Pointer is addressing the displacement byte #16. The display will then update to centre
around #6817, the required destination of the branch.
Remember that relative displacements of greater then #7F (127) are treated as negative by the Z80 processor; 'O' takes this
into account.
See also the 'U' command in connection with 'O'.
'P'
fill memory between specified limits with a specified byte.
'P' prompts for 'First:', 'Last:' and 'With:'. Enter hexadecimal numbers in response to these prompts; respectively, the start
and end addresses (inclusive) of the block that you wish to fill and the byte with which you want to fill the block of
memory.
Example:
P
First: 7000 ENTER
Last: 77FF ENTER
With: 55 ENTER
will fill locations #7000 to #7FF (inclusive) with the byte #55 ('U').
If the start address is greater than the end address then 'P' will be aborted.
'Q'
flip register sets.
On entry to the 'front panel' display the set of registers displayed is the standard register set (AF, HL, DE, BC). The use of
'Q' will display the alternate register set (AF', HL', DE', BC') which is distinguished from the standard set by the single
quote "'" after the register name.
If 'Q' is used when the alternate register set is displayed then the standard set will be shown.
'SYMBOL SHIFT T'
set a breakpoint after the current instruction and continue execution.
Example:
9000 B7
9001 C20098
9004 010000

OR
CALL
LD

A
NZ,#9800
BC,0

9008 21FFFF

LD

HL,-1

You are single-stepping the above code and have reached #9001 with a non-zero value in register A, thus the zero flag will
be in a NZ state after the OR A instruction. If you now use '^Z' to continue single-stepping then execution will continue at
address #9800, the address of the subroutine. If you do not wish to single-step through this routine then issue the ^T
command when at address #9001 and the CALL will be obeyed automatically and execution stopped at address #9004 for
you to continue single-stepping.
Remember, ^T sets a breakpoint after the current instruction and then issues a ^K command.
See the '^Z' command for an extended example of single-stepping.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

136

'T'
dis-assemble a block of code, optionally to the printer.
You are first prompted to enter the 'First:' and 'Last:' addresses of the code that you wish to dis-assemble - enter these in
hexadecimal as detailed in Section 6.3.2.1. If the start address is greater than the end address then the command is aborted.
After entering these addresses you will be prompted with 'Printer?'; answer 'Y' (capital 'Y' only) to direct the dis-assembly
to your printer stream or any other value to send output to the screen.
Now you are prompted with 'Text:' to enter, in hexadecimal, the start address of any textfile that you wish the dis-assembler
to produce. If you do not want a textfile to be generated then simply press ENTER after this prompt. If you specify an
address then a textfile of the dis-assembly will be produced, starting at that address, in a form suitable for use by GENS3. If
you want to use a textfile with GENS3 then you must either generate it at, or move it to, the first address given by the
assembler editor's 'X' command because this is the address of the start of the text expected by GENS3. You must also tell
GENS3 where the end of the textfile is; do this by taking the 'End of text' address given by the dis-assembler (see below)
and patching it into the TEXTEND location of GENS3 - see the GENS3 manual, Section 6.3.1.3.2. Then you must enter
GENS3 by the warm start entry point, to preserve the text.
If, at any stage when you are generating a textfile, the text would overwrite MONS3 then the dis-assembly is aborted press any key to return to the Front Panel.
If you specified a textfile address you are now asked to specify a 'Workspace:' address - this should be the start of a spare
area of memory which is used as a primitive symbol table for any labels generated by the dis-assembler. The amount of
memory needed is 2 bytes for each label generated. If you default by simply hitting ENTER then an address of #6000 (hex)
is assumed.
After this, you are asked repeatedly for the 'First:' and 'Last:' (inclusive) addresses of any data areas that exist within the
block that you wish to dis-assemble. Data areas are areas of, say, text that you do not wish to be interpreted as Z80
instructions - instead these data areas cause DEFB assembler directives to be generated by the dis-assembler. If the value of
the ASCII interpretation of the byte is given e.g. #41 is changed to 'A' after a DEFB. When you have finished specifying
data areas, or if you do not wish to specify any, simply type ENTER in response to both prompts. The 'T' command uses an
area at the end of MONS3 to store the data area addresses and so you may set as many data areas as there is memory
available; each data area requires 4 bytes of storage. Note that using 'T' destroys any breakpoints that were previously set see the 'W' command.
The screen will now be cleared. If you asked for a textfile to be created then there will be a short delay (depending on how
large a section of memory you wish to be dis-assembled) while the symbol table is constructed. This having been done, the
dis-assembly listing will appear on the screen or printer - you may pause the listing at the end of a line by hitting ENTER or
SPACE, subsequently hit CAPS SHIFT 5 to return to the 'front panel' display or any other key (except CAPS SHIFT 1) to
continue the dis-assembly. If an invalid opcode is encountered then it is disassembled as NOP and flagged with an asterisk
'*' after the opcode in the listing.
At the end of the dis-assembly the display will pause and, if you have asked for a textfile to be produced, the message 'End
of text xxxxx' will be displayed; xxxxx is the address (in hexadecimal or decimal) that should be POKEd (low order byte
first) into the GENS3 location TEXTEND in order that the assembler can pick up this dis-assembled textfile on a warm
start. When the dis-assembly has finished, press any key to return to the 'front panel' display, apart from CAPS SHIFT 1
which will return you to BASIC.
Labels are generated, where relevant (e.g. in C30078), in the form LXXXX where 'XXXX' is the absolute hex address of
the label, but only if the address concerned is within the limits of the dis-assembly. If the address lies outside this range
then a label is not generated, simply the hexadecimal or decimal address is given. For example, if we were dis-assembling
between #7000 and #8000, then the instruction C30078 would be dis-assembled as JP L7800; on the other hand, if we were
be disassembled as JP #7800 or JP 30720 if a decimal display is being used. If a particular address has been referenced in
an instruction within the dis-assembly then its label will appear in the label field (before the mnemonic) of the dis-assembly
of the instruction at that address but only if the listing is directed to a textfile. Example:
T
First:8B ENTER
Last:9E ENTER
Printer?Y
Text: ENTER
First:95 ENTER
Last:9E ENTER
First: ENTER
Last: ENTER
008B FE16
008D 3801
008F 23

CHIMIE INDUSTRIELLE

CP
JR
INC

#16
C,L0090
HL

25/03/2005

1re Edition

Tome TP
0090
0091
0094
0095
0098
009B
009e

Dr. Gilles OLIVE


37
225D5C
C9
BF524E
C4494E
4B4559
A4

SCF
LD
RET
DEFB
DEFB
DEFB
DEFB

137

(#5C5D),HL
#BF,"R","N"
#C4,"I","N"
"K","E","Y"
#A4

'U'
used in conjunction with the 'O' command.
Remember that 'O' updates the memory display according to a relative displacement i.e. it shows the effect of a JR or DJNZ
instruction. 'U' is used to update the memory display back to where the last 'O' was issued. Example:
7200 47
7201 20
>7202 F2<
7203 06
display 1

71F3 77
71F4 C9
>71F5 F5<
71F6 C5
display 2

You are on display 1 and wish to know where the relative jump 20 F2 branches. So you press 'O' and the memory display
updates to display 2. Now you investigate the code following #71F5 for a while and then wish to return to the code
following the original relative jump in order to see what happens if the zero flag is set. So press 'U' and the memory display
will return to display 1. Note that you can only use 'U' to return to the last occurrence of the 'O' command, all previous uses
of 'O' are lost.
'V'
used in conjunction with the 'X' command.
'V' is similar to the 'U' command in effect except that it updates the memory display to where it was before the last 'X'
command was issued.
Example:
8702 AF
8703 CD
>8704 2F<
8705 44
display 1

842D 18
842E A2
>842F E5<
8430 21
display 2

You are on display 1 and wish to look at the subroutine at #842F. So you press 'X' with the display centered as shown; the
memory display then updates to display 2. You look at this routine for a while and then wish to return to the code after the
original call to the subroutine. So press 'V' and display 1 will reappear. As with 'U' you can use this command only to reach
the address at which the last 'X' command was issued, all previous addresses at which 'X' was used are lost.
'W'
sets a breakpoint at the Memory Pointer.
A 'breakpoint', as far as MONS3 is concerned, is simply a CALL instruction into a routine within MONS3 that displays the
'front panel' thus enabling the programmer to halt the execution of a program and inspect the Z80 registers, flags and any
relevant memory locations. Thus, if you wish to halt the execution of a program at #9876, say, then use the 'M' command to
set the Memory Pointer to #9876 and then use 'W' to set a breakpoint at that address. The 3 bytes of code that were
originally at #9876 are saved and then replaced with a call instruction that halts the execution when obeyed. When this
CALL instruction is reached it causes the original 3 bytes to be replaced at #9876 and the 'front panel' to be displayed with
all the registers and flags in the state they were just before the breakpoint was executed. You can now use any of the
facilities of MONS3 in the usual way.
Notes: When the breakpoint is encountered, MONS3 will emit a short tone through the Spectrum's speaker and wait for you
to hit a key before returning to the Front Panel.
MONS3 uses the area, at the end of itself, that originally contained the relocation addresses in order to store breakpoint
information. This means that you may set as many breakpoints as there is memory available; each breakpoint requires 5
bytes of storage. When a breakpoint is executed MONS3 will automatically restore that memory contents that existed prior
to the setting of that breakpoint. Note that, since the 'T' command also uses this area, all breakpoints are lost when the 'T'
command is used. Breakpoints can only be set in RAM. Since a breakpoint consists of a 3 bytes CALL instruction a certain
amount of care must be exercised in certain exceptional cases e.g. consider the code:

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

138

Dr. Gilles OLIVE


8000
8001
8002
8003
>8004
8005
8006
8007

3E
01
18
06
AF<
0E
FF
01

8008
8009
800A
800B
>800C
800D
800E
800F

00
00
06
02
18<
F7
06
44

If you set a breakpoint at #8004 and then begin execution of the code from location #8000 then register A will be loaded
with the value 1, execution transferred to #800A, register B loaded with the value 2 and execution transferred to location
#8005. But #8005 has been overwritten with the low byte of the breakpoint call and thus we now have corrupted code and
unpredictable results will occur. This type of situation is rather unusual but you must attempt to guard against it - in this
case single-stepping the code would provide the answer; see the '^Z' command below for a detailed example of singlestepping.
'X'
used to update the Memory Pointer with the destination of an absolute CALL or JP instruction.
'X' takes the 16 bits address specified by the byte at the Memory Pointer and the byte at the Memory Pointer +1 and then
updates the memory display so that it is centered around that address. Remember that the low order half of the address is
specified by the first byte and the high order half of the address is given by the second byte - Intel format. Example:
say you wish to look at the routine that the code CD0563 calls; set the Memory Pointer (using 'M') so that it addresses the
05 within the CALL instruction and then press 'X'. The memory display will be updated so that it is centered around
location #6305.
See also the 'V' command in connection with 'X'.
'Y'
enter ASCII from the Memory Pointer.
'Y' gives you a new line on which you can enter ASCII characters directly from the keyboard. These characters are echoed
and their hexadecimal equivalents are entered into memory starting from the current value of the Memory Pointer. The
string of characters should be terminated by CAPS SHIFT 5 and DELETE (CAPS SHIFT 0) may be used to delete
characters from the string. When you have finished entering the ASCII characters (and typed CAPS SHIFT 5) then the
display is updated so that the Memory Pointer is positioned just after the end of the string as it was entered into memory.
'SYMBOL SHIFT Z'
single-step
Prior to the use of '^Z' (or '^T') both the Program Counter (PC) must be set to the address of the instruction that you wish to
execute.
'^Z' simply executes the current instruction and then updates the 'front panel' to reflect the changes caused by the executed
instruction.
Note that you can single-step anywhere in the memory map (RAM or ROM) but that you should ensure that interrupts are
not enabled at any time.
You cannot single-step the Interface 1 ROM.
There now follows an extended example which should clarify the use of many of the debugging commands available within
MONS3 - you are urged to study it carefully and try it out for yourself.
Let us assume that we have 3 sections of code shown on the next page in the machine, the first section is the main program
which loads HL and DE with numbers and then calls a routine to multiply them together (the second section) with the result
in HL and finally calls a routine twice to output the result of the multiplication to the screen (third section).
7080
7083
7087
708A
708B
708E
708F
7092
.
.
.

2A0072
ED5B0272
CD0071
7C
CD1D71
7D
CD1D71
210000

CHIMIE INDUSTRIELLE

LD
LD
CALL
LD
CALL
LD
CALL
LD

HL,(#7200)
DE,(#7202)
Mult
A,H
Aout
A,L
Aout
HL,0

25/03/2005

; SECTION 1

1re Edition

Tome TP

139

Dr. Gilles OLIVE

7100
7101
7103
7104
7106
7107
7108
7109
710A
710B
710C
710E
710F
7110
7111
7112
7113
7114
7115
7116
7118
7119
711B
711C

AF
ED52
19
3001
EB
B2
37
C0
B3
5A
2007
EB
C9
EB
19
EB
29
D8
1F
30FB
B7
20F5
19
C9

711D
711E
711F
7120
7121
7122
7125
7126
7128
712A
712B
712D
712E
7132
7133
.
.
7200
7202

Mult

OR
SBC
ADD
JR
EX
OR
SCF
RET
OR
LD
JR
EX
RET
EX
ADD
EX
ADD
RET
RRA
JR
OR
JR
ADD
RET

A
HL,DE
HL,DE
NC,Mu1
DE,HL
D

F5
Aout
0F
0F
0F
0F
CD2671
F1
E60F
Nibble
C690
27
CE40
27
FD213A5C
D7
C9

PUSH
RRCA
RRCA
RRCA
RECA
CALL
POP
AND
ADD
DAA
ADC
DAA
LD
RST
RET

AF

1B2A
0300

DEFW
DEFW

10779
3

Mu1

Mu2

Mu3
Mu4

; SECTION 2

NZ
E
E,D
NZ,MU4
DE,HL
DE,HL
HL,DE
DE,HL
HL,HL
C
NC,Mu3
A
NZ,Mu2
HL,DE

Nibble
AF
%1111
A,#90
A,#40
IY,#5C3A
#10

Now we wish to investigate the above code either to see if it works or maybe how it works. We can do this with the
following set of commands - it should be noted that this is merely one way of stepping through the code, it is not
necessarily efficient but should serve to demonstrate single stepping:
M:7080 ENTER
7080.
^Z
^Z
^Z
M:7115 ENTER
W
^K
^Z
^Z
^Z
^Z
^Z
^Z

CHIMIE INDUSTRIELLE

set Memory Pointer to #7080


set Program Counter to #7080
single step.
single step.
follow the CALL.
skip the pre-processing of the numbers.
set a breakpoint.
continue execution from #7100 up to breakpoint.
single step.
follow the relative jump.
single step.
"
"
"

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

^Z
^Z
^Z
^Z
^Z
^Z
M:7128 ENTER
^K
^Z
^Z
^Z
^Z
,
W
^K
^Z
,
W
^K
^Z
^T

140

"
"
"
return from multiply routine.
single step.
follow the CALL.
set Memory Pointer to interesting bit.
continue execution from #711D to breakpoint.
single step.
"
"
"
have a look at the return address.
set breakpoint there
and continue.
single step.
return from Aout routine

single step.
obey the whole CALL to Aout.

Please do work through the above example, first typing in the code of the routines (see 'Modifying Memory' below), or
using GENS3, and then obeying the commands detailed above. You will find the example invaluable as an aid to
understanding how to trace a path through a program.
'"' SYMBOL SHIFT P
this command is exactly the same as the 'L'ist command except that the output goes to the printer stream instead of to the
screen. Remember that, at the end of a page, you press CAPS SHIFT 5 to return to the 'front panel' or any other key (except
CAPS SHIFT 1) to get another page.
Modifying Memory.
The contents of the address given by the Memory Pointer may be modified by entering a hexadecimal number followed by
a terminator (see Section 6.3.2.1). The two least significant hex digits (if only one digit is entered then it is padded to the
left with a zero) are entered into the location currently addressed by the Memory Pointer and then the command (if any)
specified by the terminator is obeyed. If the terminator is not a valid command then it is ignored.
Examples:
F2 ENTER
123 CAP SHIFT 8
EM:E00_

8CO

2A5D_

#F2 is entered and the Memory Pointer advanced by 1.


#23 is entered and the Memory Pointer advanced by 8.
#0E is entered at the current Memory Pointer
and then the Memory Pointer is updated to #E00.
Notice that a space ('_') has been used to
terminate the 'M' command here.
#8C is entered and the Memory Pointer is updated
(because of the use of the 'O' command) to the
destination of the relative offset #8C i.e. to its
current value - 115.
#5D is entered and the Memory Pointer is not
changed since the terminator is a space, not a
command.

Modifying Registers.
If a hexadecimal number is entered in response to the '>' prompt and is terminated by a period, '.', then the number specified
will be entered into the Z80 register currently addressed by the right arrow '>'.
On entry to MONS3 '>' points to the program Counter (PC) and so using '.' as a terminator to a hex number initially will
modify the program counter. Should you wish to modify any other register then use '.' by itself (not as a terminator) and the
pointer '>' will cycle round the registers PC to AF. Note that is is not possible to address (and thus change) either the Stack
Pointer (SP) or the IR registers.
Examples:
Assume that the register pointer '>' is initially addressing the PC.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

.
.
0.
.
123
.
.
E2A7
.
FF00.
.
8000.

141

point to IY.
point to IX.
set IX to zero.
point to HL.
set HL to #123.
point to DE.
point to BC.
set BC to E2A7.
point to AF.
set A to #FF and reset all the flags.
point to PC.
set the PC to #8000

Note that '.' can also be used to modify the alternate register set if this is displayed. Use to 'Q' command to flip the display
of the register sets.

6.3.2.3.
710C
>PC
SP
IY
IX
HL
DE
BC
AF
IR

2007
710C
D0AF
CF6A
D09F
2A1B
0000
0004
0304
3F7C

7100
7101
7102
7103
7104
7105
7106
7107

AF
ED
52
19
30
01
EB
B2

20
8A
0D
04
DF
F3
FF

APPENDIX AN EXAMPLE FRONT PANEL DISPLAY


JR
07 EB
70 06
11 0C
03 04
FE 29
AF 11
C3 CB
V

7108
7109
710A
710B
>710C
710D
710E
710F

NZ,#7115
C9 EB 19 EB
03 0A 03 0D
0F 09 18 18
00 00 00 1B
28 02 CF 02
FF FF C3 CB
11 2A 5D 5C

37
C0
B3
5A
20<
07
EB
C9

7110
7111
7112
7113
7114
7115
7116
7117

EB
19
EB
29
D8
1F
30
FB

>
Shown above is a fairly typical 'front panel' display - the display is one actually obtained while single-stepping the Mult
routine given in the example of the 'Z' command.
The first 9 lines of the display contain the Z80 registers; the name of the register first (PC to IR), then (for PC to BC) the
value presently held in the register and finally the contents of the 7 memory locations starting from the address held in the
register. The Flag register is decoded to show the flags currently set in the bit order that they are used within the register - if
the Flag register was set to #FF then the display following AF would look like 00FF SZ H VNC i.e. the sign, zero, halfcarry, parity/overflow, add/subtract and carry flags are all set.
A register pointer '>' points to the register currently addressed; see Section 6.3.2.2 - Modifying Registers.
The 24 byte memory display below the register display is organized as the address (2 bytes, 4 characters) followed by the
contents (1 byte, 2 characters) of the memory at that address. The display is centered around the current Memory Pointer
value, indicated by '> <'.
Commands (see Section 6.3.2.2) are entered on the bottom line of the screen in response to the prompt '>'. The display is
updated after each command is processed.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
6.4.
Introduction to Z80 Assembler
Written by James Hollidge7

142

Foreword
The Z80 is one of the most popular microprocessors of the 80's having been used in many home
computers systems of that era. This document will give an introduction to all aspects of the Z80
assuming no knowledge of programming.
This guide is only intended as an introduction to the concepts and language of machine code and
assembler - it doesn't give a complete examination of the instruction set nor does it attempt to deal with
the particulars of any one Z80 system. However I will be covering that sort of stuff in my next Z80
article when I deal with the actual specific Spectrum stuff and some more of the instructions that are
only useful in context.
Contents
Binary vs Decimal vs Hexadecimal
The Registers, Memory and Machine Language vs Assembler
Addition and Subtraction
Bit Manipulation
Program Flow, more on Flags and The Stack
Memory Manipulation
6.4.1.

Binary vs Decimal vs Hexadecimal

The way we count things in every day life is based on the number ten. This is an arabic convention that
has been widely adopted by the west. However it's not the only way of counting things. Ancient
cultures have used systems based on 5, 12 and even 60. Computers use a counting system based on 2.
Why ? Quite simply it's for electronic simplicity - it is far easier to determine whether something is on
(1) or off (0) (known as digital) than if it is at a range of voltages (known as analogue).
It's really very easy to work with binary. In decimal each extra digit represents numbers ten times
greater than the last digit. For example take 55. The first 5 represents 5 tens, the second 5 represents 5
ones. The first digit hence represents numbers ten times larger than the second. In 555 the first digit
represents 5 hundreds, the second 5 tens and the third 5 ones. The first digit represents numbers ten
times bigger than the second, in turn ten times bigger than the third. The magnitude of the digits are
10x10x1, 10x1, 1. For thousands the magnitude of the digits is 10x10x10x1 and so on. Each extra digit
is worth ten times more the last. Why do we work in these columns ? Well when we get to 9 in one
column then adding 1 will produce a number too large to represent (we can only represent
0,1,2,3,4,5,6,7,8 and 9). Unless we invent a symbol for each number we have to show the numbers
larger than 9 in a different way. We do this by creating a column of digits that do this, the tens. Hence
when we add 1 to 9 we write 10 to show there's one 10 and zero 1s.
Binary works in the same way except as we only have two digits we have to represent the 2's in a
different way ; by adding an extra column. For example when we add 1 to 1 we add an extra column of
digits to represent the 2 leaving us with a number 10 in binary: 1 two and 0 ones. Each extra digit (or
more correctly bit, for binary digit) we add represents numbers twice as large as the last bit. Hence:
1=1, 1x2=2, 1x2x2=4, 1x2x2x2=8, 1x2x2x2x2=16 etc....
The Z80 is an 8 bit system which means it uses 8 bits to represent its numbers, which can look like
this:
76543210 - Bit Number
01001000 - Binary Number

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
143
Now to convert this to decimal we take each bit that is set (1) and look at it's bit number (shown above
the binary number), take 2 to the power of that number and add it to the total. (Taking a power of a
number says take that number and multiply it by itself a number of times, 2 to the power of 2 (or 2^2)
is the same as 2x2x1 or 4).
2^6 (2x2x2x2x2x2x1 = 64 ) + 2^3 (2x2x2x1 = 8 ) = 64 + 8 = 72
The maximum value we can represent with 8 bits is therefore 2^0 + 2^1 + 2^2 + 2^3 + 2^4 + 2^5 +
2^6 + 2^7 = 255, practice your binary mathematics as it's going to be essential here.
Now alongside binary in computing we use hexadecimal, a number system based on 16. So this time
each digit we write represents 16 times the magnitude of the last digit. We use the letters A to F to
represent the number 10 to 15 in decimal.
So a hexadecimal number like A5 would be 10 x 16 + 5 in decimal or 165. However hexadecimal is
far more useful when converting binary because it just so happens that because 16 is a power of 2
(2^4) that conversion between these number systems is very straightforward. All we need do is take
each group of four bits in the number and replace them with the hexadecimal equivalent. Why does
this work ? Well each group of four bits can represent 16 different numbers and each hexadecimal
digit can represent 16 different numbers. For example:
76543210
11101101
The first four bits (0-3) are 2^3 + 2^2 + 2^0 = 13 which is D, the second four bits (4-7) are 2^3 + 2^2 +
2^1 = 14 which is E. Hence this number is ED in hexadecimal (and 14x16 + 13 = 237 in decimal). As
you might see hexadecimal is very much more convenient for writing binary numbers down quickly
without having to think too much about conversion as going back from hexadecimal is just as easy:
you simply replace each digit with it's equivalent binary number. For example C9 would become 12
and 9, or 1100 and 1001: 11001001 or 201. Hexadecimal makes working with binary a bit easier and
converting to decimal a bit more straightforward. If you can, learn the first 16 binary numbers so you
can convert quickly:
Binary
Decimal
Hexadecimal
0000
0
0
0001
1
1
0010
2
2
0011
3
3
0100
4
4
0101
5
5
0110
6
6
0111
7
7
1000
8
8
1001
9
9
1010
10
A
1011
11
B
1100
12
C
1101
13
D
1110
14
E
1111
15
F
In this article b, d and h after a number represent binary, decimal and hexadecimal respectively, if
there is any possibility of misinterpretation.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
6.4.2.

Dr. Gilles OLIVE

144

The Registers, Memory and Machine Language vs Assembler

The Z80 stores it's numbers and does all its math's (most of the time) using registers - these are a set of
8 bit numbers that are stored internally (actually it's a bit more complicated by we'll get to that in a bit).
At the moment we'll deal with the registers you'll going to use pretty much all the time. They are
A,B,C,D,E,F,H,L and A',B',C',D',E',F',H',L'.
Each register stores an 8 bit number (that's 0-255). A and F are special registers. A is known as the
accumulator. It does most of the math's work. F is known as the flag register. It works a bit differently
to other registers in that it's purpose is to store the results of other operations depending on whether
they are zero, negative, carry etc... but that'll be covered more later. The registers B,C,D,E,H and L are
a set of general purpose registers and can also be used in pairs to form 16 bit numbers (which can
represent numbers up to 65535, test your binary understanding to figure out why). The valid pairs are
BC, DE and HL.
The other registers are known as shadow registers, They can't be accessed directly but instead can be
swapped around with the normal registers. They are incredibly useful for temporarily storing values.
The way we load values into these registers is by way of the LD instruction, which is short for load.
For example LD A,0 will load A with 0. LD BC,0 will load B and C with 0. LD A,B will load A with
B and so on. There are many forms of LD but you can't do things like LD HL,BC.
Now back to shadow registers. We access those using the exchange instructions. EXX will swap BC
with B'C', DE with D'E' and HL with H'L'. EX AF,AF' will swap A with A' and F with F'. You won't
see them for awhile but you should know about them.
In addition to those exchange instructions there are a few others, EX DE,HL will swap DE with HL.
You'll see its uses later. The other instructions you need not know about for now.
Before we actually move on to assembler proper you should also know about machine language.
Assembler is basically one step away from machine language. The Z80 gets instructions from the
memory as numbers. Assembler is the english representation of these numbers. Machine language or
machine code is the numbers represented by the assembler. So to clarify when we write an instruction
LD A,0 the Z80 reads 3E 00. 3E is the opcode or machine code and 00 is the operand, or the value that
tells LD A,number what number to load. For the most part we don't need to concern ourselves with
these numbers but for advanced code we can use the knowledge of these opcodes to manipulate the
memory and actually alter the operation of a program by altering the opcodes stored !
Now for those of you wondering what memory is exactly it's best thought of as a huge storage area. It
stores opcodes and data side by side. The Z80 doesn't understand the difference so you need to look
after it and make sure you don't try to execute graphic data or display program code ! The Z80 uses a
16 bit register called PC, or program counter, to keep track of where it's getting instructions from. As
16 bit numbers can represent 65536 different numbers the Z80 can access 65536 different memory
locations to execute code. Each memory location stores an 8 bit number or byte, giving 65536 bytes of
memory or 64 kilobytes (a kilobyte being 1024 bytes) or 64 kb. You'll see more about PC later but for
now all you need to understand is that memory stores all the information the Z80 can use and it's
where we place instructions and data so we can make a computer useful !

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
6.4.3.

Dr. Gilles OLIVE

145

Addition and Subtraction

Now we are actually getting somewhere. Addition and subtraction are the most basic mathematical
tools available to the Z80 and you'll probably use them a lot.
Addition in binary works the same way as in decimal. We add the ones, twos, fours etc... together and
write down the result for each column, carrying to the next if it's too large. For example:
00000110
00000011+
00001001
0 00001100

Result
Carry

The carry is treated as a third number to add. If the result of the addition of one column of bits is too
large to fit into one column (i.e. if both bits are 1) then we place a 1 in the carry in the next column and
include that in the next addition. The carry usually starts with a zero in the first (rightmost) column.
Now what if we add up two values with a result greater than 255 ?
11111111
11111111+
11111110
1 11111110

Result
Carry

Or 255+255 = 254 ?!? No, in fact we use the F register to store the extra carry in one of its bits,
strangely enough called the CARRY bit, or flag. The CARRY bit in essence represents 256, making
the result of the addition 510. There's more on the carry flag later.
Now, when we do subtraction we do things in a slightly different way. The way negative numbers are
represented is though a system called 'twos complement'. The reason it is called a complement is that
we represent negative numbers by inverting each bit of a positive number. It's twos complement
because we then add one to this inversion (ones complement). Why twos complement ? Well, it's quite
simple really.
Inverting all the bits to form ones complement seems a reasonable way to represent negative numbers,
if we have 00001011, or 11, -11 is simply 11110100. Obviously this means numbers above 127 will be
negative (01111111 is 127, thus -127 is 10000000, or 128 in positive representations). However look
at zero. If we invert the bits in zero we get 11111111 for -0 ! As there is no positive or negative sense
for zero clearly we have a problem here. We get around this in twos complement by adding 1.
11111111 + 1 = 0 plus a carry out - which we ignore. 00001011 will now be 11110100 + 1, or
11110101. We now have a range from -128, 10000000, to +127 01111111. The leftmost (or most
significant bit) thus determines whether or not the number is negative or positive.
Twos complement also makes subtraction easy - as adding two numbers represented in twos
complement together will always give the right result. For example, 11111111 + 00000001 (-1 + 1),
which we've already seen equals zero as expected. In ones complement we'd have 11111110 +
00000001 - which is 11111111 and still right as we have two zeros. If we went on to add 1 twos
complement would give us the correct answer but ones complement would not. - it would remain zero
- positive zero ! The Z80 cannot know whether or not a number is positive or signed in this system and
handle the two zeros correctly for subsequent instructions.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
146
Hence due to the fact ones complement has two zeros and would make the Z80 work harder we use
twos complement to perform subtraction - always treating both numbers as twos complement.
Here we can do 100 - 10 by adding 100 and 10 in twos complement.
01100100
11110110
01011010
1 11001000

100
+ -10
Result 90
Carry

What about something like 255 - 128 ? -128 doesn't have a positive representation in twos
complement. Well the Z80 doesn't make the distinction between twos complement and unsigned
numbers so what we're actually doing is -1 + 128 which is still 127. So when adding 255 + 128 this is
also -1 + 128 and again gives us 127. So 128 is treated as both positive and negative at the same time it's the context with which you use it that gives it a sign.
In essence don't worry about the way the Z80 actually performs the operation - (you won't get the carry
working as it does here with subtraction for example) - it'll always give the correct answer when
subtracting or adding. What you as a programmer need to worry about is whether or not you treat the
number as signed or unsigned.
There are four flags which will help you working with addition and subtraction operations:
The carry flag you have met. It will be set if an addition has a result greater than 255 or a subtraction
has a result less than 0.
The sign flag will be set if an operation on a register leaves a negative result (i.e. bit 7 is set).
The parity/overflow flag - which has two uses; the parity part we'll see later. In dealing with addition
and subtraction an overflow occurs if an operation causes a result larger than can be represented in
twos complement, i.e. something less than -128 or more than 127. So 127 + 1 or -128 - 1 would both
cause overflows.
Finally there is the zero flag which is set if an operation results in a zero result - no surprises there.
Along with carry flag these flags are helpful in dealing with the results of operations as will be seen
later.
The instructions for carrying out these operations are ADD and SUB, no prizes for guessing what they
do. For example:
LD A,23
LD B,100
LD C,53
ADD A,B
SUB C
Would leave A with 70, sign unset, carry.
ADD A, can work with any of the normal registers (excluding F of course) or an 8 bit number, so
ADD A,D or ADD A,65 are fine. ADD A,HL or ADD A,1000 are invalid.
SUB works in pretty much the same way, with any of the normal registers or an 8 bit number but not
with pairs or numbers larger than 255.
However, ADD can also work with register pairs. There are three ADD HL, instructions that work
with BC, DE or HL. SUB cannot do this however, it's always A take away another number and hence
the reason why A is not mentioned in the SUB C operation in the above example. Note that when
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
147
adding register pairs if carry is set it will represent 65536 (use your understanding of binary to figure
out why).
As seen above these operations can often produce a result that leads to carry being set. In this case
there are two further instructions that take heed of this, ADC and SBC, or add with carry and subtract
with carry.
ADC will treat the carry as 1, hence if carry is set ADC A,0 will actually add 1, not 0. SBC works
again in basically the same way, treating carry as 1. So SBC A,0 with carry set will subtract 1. Notice
that SBC is written with A, like ADD and ADC.
This is because SBC has some 16 bit subtraction instructions: SBC HL, and any valid register pair.
Remember EX DE,HL ? Well say instead of HL-DE you want to do DE-HL. Using EX DE,HL SBC
HL,DE EX DE,HL will achieve this. Very useful.
There's one final subtraction instruction you should know about, NEG. NEG is short for negate and
performs 0-A. In effect it will convert twos complement number from positive to negative. For
example if A is 1 NEG will be FF, or -1. If A is FF NEG will be 1 or +1. Remember however that
NEG 128 will be.
There are two final instructions for addition and subtraction which are very useful indeed. They are
INC and DEC and stand for increment and decrement. These basically add 1 or take away 1. You'll
find yourself using them all the time as they are much more convenient than the above instructions.
They work on any valid register pair or single register. Both instructions completely ignore the carry
flag and won't affect it at all. When you get to 255 or 65535 and increment you get zero, if you're at
zero and decrement you get 255 or 65535. Carry plays no part at all.
6.4.4.

Bit Manipulation

Beyond addition and subtraction there are numerous other ways in which you can affect registers.
They are called bitwise instruction because they work at the level of bits.
AND is short for, erm, and and works by comparing each bit and setting the result bit to 1 if they are
both 1. For example:
11000011 AND 10011001 = 10000001
OR is short for, well or, and works in a similar way to AND but will set the result but to 1 if either bit
being compared is 1. For example:
11000011 OR 10011001 = 11011011
XOR is short for exclusive or and works a bit like OR and a bit like AND. It will set the result bit to 1
if either bit being compared is 1 but *NOT* if both bits are 1. For example:
11000011 XOR 10011001 = 01011010
AND, OR and XOR all work on A and either a number or a single register, XOR B or AND 45 for
example. Note that XOR A will set A to 0 and is a very useful optimization (try to figure out why).
CPL is short for complement and basically inverts each bit, so a 1 is 0 and a 0 is 1. For example:
CPL 10010010 = 01101101
CPL only works on A and hence takes no operand. XOR FF is equivalent to CPL, can you see why ?
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
The next set of instructions all work by shifting and rotating bits rather than comparing them.

148

The rotation group works by moving all the bits either left or right and then moving the leftmost or
rightmost bit to the beginning or to the carry and the carry or the rightmost or leftmost bit to the end.
So starting from:
Register
10000001

C
0

00000010

01000000

00000011

11000000

with RL (rotate left with carry)


with RR (rotate right with carry)
with RLC (rotate left without carry)
with RRC (rotate right without carry)
Can you see why RL and RR nine times and RLC and RRC eight times returns the register to its initial
value ? These instructions take any normal single register. There are also some special instructions
involving the A register only. They are RLA, RRA, RRCA and RLCA. Note the lack of a space is
important - these are different to RL A, RR A, RRC A and RLC A but work very similarly. The
difference in these instructions is that they only affect the carry flag. There is another flag called the
parity/overflow flag which will be explained after the shift instructions.
The shift instructions work in a very similar way, either shifting bits right or left. SLA, or shift left
arithmetic, will shift each bit left with the leftmost bit being moved into the carry but the rightmost bit
is *always* reset to zero. In effect it will multiply by two. (Why ? Well adding a zero in decimal to the
end of the number makes it ten times bigger, here we're basically doing the same thing with the carry
representing 256 and hence adding a zero here makes it twice as big).
Now there are two right shifting instructions that have one subtle difference. SRL, or shift right
logical, will do much the opposite of SLA, but with the leftmost bit being set to zero and the rightmost
being moved into the carry. SRA, or shift right arithmetic on the other hand will leave the leftmost bit
unchanged. So if it was one it remains one and if it was zero it remains zero. This is because SRA
treats the number as being signed, and hence leaves bit 7 alone as it signifies the signing. All three
instructions work on any single register but don't have any special instruction for A or excluding carry.
Right, back to flags. These instructions have a special use for the parity/overflow flag (or PV).
Basically if the result of the instruction leaves a register with an even number of bits the parity is even,
and if it's left with an odd number of bits the parity is odd. You'll see in the next topic how we can use
PE (parity even) and PO (parity odd).
The final group of instructions are the SET, RES and BIT instructions. These take the form bit,register
and will SET, RESet or test the BIT of the register in question. For example SET 4,D will make bit 4
of D 1, RES 0,H will make bit 0 of H 0 and BIT 7,C will test bit 7 of C and set the zero flag depending
on the result.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
6.4.5.

Dr. Gilles OLIVE


Program Flow, more on Flags and The Stack

149

What is program flow ? Essentially it refers to the way we navigate a program's instructions. So far
you've only see things move linearly, that is to say when you execute one instruction you move onto
the next in memory straight after it and any operands. As you've heard PC keeps track of where code is
being fetched from the memory. For every instruction and operand fetched from memory PC is
incremented by one. However why should PC always being moving forward ? If we change it
completely we could move to an entirely different part of memory to execute instructions. Why we
would want to do this and how we do this are covered here. Firstly why. Well we've been talking a lot
about flags but so far only carry has been of any use. However say you want to execute one bit of code
depending on whether or not A-B is zero and another if it isn't it might look like this:
SUB B
JP Z,somewhere
JP NZ,elsewhere
JP is short for jump. It basically reads two bytes of information and sets PC to them. You could think
of it as LD PC,xxxxh. JP Z is a conditional jump, and this is where flags start to make more sense. JP
Z will only jump is the zero flag is set. That is to say IF Z=1 LD PC,xxxxh. JP NZ is another
conditional jump but will only jump if the zero flag isn't set. Can you see now why the above program
does what it's supposed to ? Conditions form the backbone of most programs - you'll find it next to
impossible to make useful programs without them. The conditions we can use with JP are:
Z, jump if the zero flag is set.
NZ, jump if the zero flag is reset.
C, jump if the carry flag is set.
NC, jump if the carry flag is reset.
PO, jump if parity odd or there's no overflow.
PE, jump if parity even or there's an overflow.
P, jump if positive.
M, jump if negative.
Let's look at PO, PE and P and M a bit more closely. As you already know 00 to 7F can represent
positive numbers and 80 to FF can represent negative numbers. P and M work with this convention as
you might expect - using the sign flag - depending on whether the result of an operation if positive or
negative using this convention. PO and PE have two uses. As outlined with the shift and rotate
instructions they stand for parity even and parity odd. However the flag is called the parity/overflow
flag and it also detects something called an overflow. What is an overflow ? Well as stated in chapter
6.4.3 if the result of an operation in two's complement produces a result that's signed incorrectly then
there's an overflow. For example 127+127 is 254, but in twos complement 254 is -2. Two positive
numbers added together don't form a negative so there's an overflow.
Now along side JP is the CALL instruction that works in a very similar way. The CALL instruction
also takes the conditions outlined above but it will first store a copy of the current PC value in a special
place called the stack. Why does it do this and what is the stack ?
Well the stack is a section of memory where registers can be stored temporarily. Think of it like a bit
spike where you can shove bits of paper on and take bits of paper off but only ever work with the top
of the spike. The Z80 uses a 16 bit register called SP, or the stack pointer, to point to the stack. Two
instructions are then used to manipulate the stack. They are PUSH and POP.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
150
PUSH does what you might expect, it PUSHes a register pair onto the stack. That's BC, DE, HL and
AF. AF ? Yes, in this case AF is treated as a register pair. Only pairs may be used with the stack. Once
pushed onto the stack the stack pointer is decremented twice to point to the next bit of memory where
the next item will be pushed on. It decrements SP as the stack works backwards, starting high and
getting lower with the more items on the stack. In essence the spike is stuck to the ceiling !
POP does the opposite, and POPs a register pair off the stack and increments SP twice. Note that it
doesn't have to be the same register pair at all, which can be useful for swapping register values around
in pairs.
So our CALL instruction is effectively PUSH PC. So what's POP PC ?
RET is. RET is POP PC essentially. It can also use the same conditions as CALL and JP. So using
CALL and RET you can CALL a subroutine and then use RET at the end of it to get back to where
you were. Trust me, this is incredibly useful. I should also note at this point that you can LD SP,HL,
ADD HL,SP, ADC HL,SP, SBC HL,SP, INC SP and DEC SP. There are other instructions with SP but
I'll wait another time to detail all the instructions and their various iterations.
Finally there is the JR instruction. JR is short for jump relative as doesn't LD PC,xxxxh, no, it's more
of a ADD +/-xxh,PC. That is to say using two's complement PC is moved up to 127 bytes forward or
128 bytes back. The advantage of JR is that it's one byte shorter than JP. The disadvantage is that only
Z, NZ ,C ,NC can be used as conditions.
Now on a different note is the CP instruction, compare. It works basically by doing a subtraction
without subtracting anything. So CP B is A-B but it doesn't affect A. So what's the use of it ? Well
what it will do is set the flags according to the result of A-B. So if A-B is zero the zero flag is set, if B
is greater than A then carry is set and so on. CP can be used with any single register or a number.
6.4.6.

Memory Manipulation

The final part of our introduction to Z80 deals with the memory. We've already been manipulating the
memory using POP and PUSH and CALL and RET, but this section covers the major tools.
Firstly our old friend LD. We use brackets to signify that instead of being a number or register we
actually mean the contents of the memory at that address. For example LD A,(ABCD) loads A with
the memory at ABCD, not with ABCD itself (it wouldn't fit anyway would it ?). LD A,(HL) will load
A with the contents at memory address HL, not with HL itself. We can also load memory with
registers, LD (HL),A and LD (ABCD),A for example. We can also load a memory address with HL, a
two byte number, or HL with a memory address of two bytes, a bit like using a stack at HL.
There are also a set of instructions called the block shift instructions because they are designed to
move chunks of memory around and block search because they are designed to search through chunks
of memory.
The block shift instructions start with LD, like load. Then they take either I or D, standing for
increment and decrement, and then a R for repeat. So we have LDI, LDD, LDIR and LDDR. How do
they work ?
Well each instruction uses BC, DE and HL. BC is a counter, DE is the target, HL is the source. Each
command works in a similar way, they'll load the memory at DE with the memory at HL (hence target
and source).
LDD will then decrement BC, DE and HL. It will then set the PV flag to zero, or parity odd, if BC is
zero. It leaves the other flags unaffected though. LDDR works in much the same way but will continue
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
151
working until BC is zero. LDI and LDIR are basically the same. However DE and HL are incremented
instead of decremented.
Here's an example of block shift:
LD DE,0000h
LD HL,4000h
LD BC,0100h
LDIR
Can you see how this works ? Basically 100h bytes of data starting at 4000h are copied to 0000h
through to 0100h. Block shift is useful in a text editor for example. You might want to delete a
character and then shift everything else down in memory. Block shift will do that quickly and easily.
You can think of it as a copy instruction.
Now block search is basically a CP with, I or D and R tacked onto the end. It works by comparing A
with the memory at HL, then setting PV if the result is zero, leaving the other flags alone. CPI
increments HL, CPD decrements HL and the both decrement BC. CPIR and CPDR repeat until BC is
zero (and the zero flag is set) or PV is set. So BC is again a counter, HL is the source and A is the
testing number.
So say you want to find the first occurrence of 124 in the valid memory space:
LD HL,0000h
LD BC,0000h
LD A,124
CPIR
Note if you used CPDR it would find the last occurrence of 124 in the valid memory space. Can you
figure out why ?
6.5.

Le TP lui-mme

6.5.1.

Lancement de Gens

Relire en premier lieu le paragraphe 6.2.4 la page 101 et notamment sa remarque.


Une fois que la cassette contenant GENS v3M21 a t place dans le lecteur virtuel, on va charger
l'assembleur Z80 Gens l'adresse 26000. Pour cela on va taper l'ordre suivant:
LOAD "" CODE 26000
ce qui en langage ZX Spectrum va se traduire par taper sur les touches suivantes:
J
Shitf droit P
Shitf droit P
Shitf droit et Shift gauche
I
26000

(LOAD)
(")
(deuxime ")
(Passage en mode tendu)
(CODE)
(Attention pas par le clavier numrique qui n'est pas reconnu)

Je vous l'avais dit que cela tre droutant au dpart.


Maintenant, il faut lancer Gens, qui est un simple fichier excutable binaire. On va donc faire:
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

152

RANDOMIZE USR 26000


Ce qui en touche devient:
T, Shift droit et Shift gauche, L, 26000
A partir de maintenant, vous tes sous Gens et je considre que le manuel a t lu et que vous
connaissez donc les ordres si referrant.
6.5.2.

Ce qui est demand

Il y aura deux parties dans ce TP: prnom et bordure.


A partir d'un certain nombre d'informations sur le systme vous tes priez de faire un programme en
Z80. Dans certains cas, je vous donne un exemple de programme.
Voici les informations sur le systme du ZX Spectrum. Elles consistent en quelques adresses de la
ROM:
#0D6B
3435
CLS
#1601
5633
Ouverture du Canal (Mettre le canal dans l'accumulateur)
#203C
8252
PRINT chaine
#10
16
Affiche un caractre (Mis dans l'accumulateur)
#8
8
Envoi un message compte-rendu
Pour afficher un nombre: le mettre dans BC puis appeler
#2D2B
11563
#2DE3
11747
Pour les deux exercices demands, on placera le code binaire l'adresse 60000 et le point d'entre la
mme adresse. Ne pas oublier non plus de finir votre programme par un retour !
6.5.2.1.

Ecrire son prnom

Nous allons tester diffrentes mthodes pour afficher son prnom.


Dans tous les cas, il faut ouvrir le canal 2, qui correspond l'cran. On chargera l'accumulateur
avec le nombre 2 (LD A,2) puis on ferra un CALL #1601.
6.5.2.1.1.

Mthode 1

La premire mthode est la plus simple mais la moins pratique et celle qui consomme le plus de
mmoire. Elle consiste faire appel chaque fois au sous programme qui se trouve l'adresse #10 (ou
16). On le fera avec l'ordre RST qui ne prend qu'un octet au lieu de trois.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

153

Dr. Gilles OLIVE

6.5.2.1.2.

Mthode 2

Comme on remarque, la mthode 1 est fastidieuse. On peut alors l'amliorer un peu. On va mettre
chaque lettre du message la suite et on terminera par le chiffre 0 (zro). Il suffit alors de prendre
chaque caractre un par un de le tester, de s'arrter si il est gal zro sinon de l'afficher. Soit:

Avouez que c'est quand mme plus facile programmer ... et pourtant il y a encore plus simple.
6.5.2.1.3.

Mthode 3

Il suffit de faire appel au systme "PRINT chaine" qui justement se charge d'afficher une chane de
caractres. Il suffit de mettre l'adresse de la chane afficher dans DE et la longueur dans BC et
d'appeler l'adresse #203C ... et c'est tout !

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

154

Dr. Gilles OLIVE

6.5.2.2.

Bordure

6.5.2.2.1.

Devoir

Aprs avoir lu les informations techniques, le but est de faire un programme qui affiche plusieurs
couleurs sur le bord de l'cran. Vous pouvez faire deux versions, une o l'image n'est pas stabilise et
l'autre, en jouant sur les dlais, stabilise.
6.5.2.2.2.

Informations techniques

Ports Entre/Sortie du ZX Spectrum


Le Spectrum possde 65536 ports d'entre/Sortie. Cependant, du fait de sa conception hardware, il ne
peut adresser que peu de priphriques: l'octet bit de poids faible sert indiquer quel priphrique le
microprocesseur veut utiliser. Pour adresser une extension particulire, il suffit de faire un out ou un in
sur un numro de port dont l'octet de poids faible a tous ses bits un, l'exception du bit
correspondant au priphrique auquel on s'adresse (cf. tableau). En clair, si je veux envoyer un octet
sur l'imprimante, je dois faire un out sur un port dont le poids faible est gal b11111011.
Bit Signification

0 Clavier et entre cassette (en lecture) et haut-parleur, sortie cassette, border de l'cran (en sortie)
1 Priphrique optionnel
2 Imprimante
3 Priphrique optionnel
4 Priphrique optionnel
5 Non utilis
6 Non utilis
7 Non utilis
(Les bit nots "priphrique optionnel" sont utiliss par des extensions Sinclair. Il s'agit d'une interface
RS232, le micro-drive, et d'un priphrique rseau. Nous n'avons pas les informations permettant de
prciser quel bit correspond quel priphrique.)
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
155
Attention de n'crire que sur des ports accessibles en criture, ou de ne lire que sur des ports
accessibles en lecture, sinon il est possible que vous endommagiez irrmdiablement votre ordinateur !
A noter, les bits 5, 6 et 7 ne sont pas utiliss, cela veut dire que sur un Spectrum sans extension
matrielle la valeur de ces bits n'est pas prise en compte. Il est prfrable cependant de les garder 1,
car votre programme pourrait avoir des effets imprvisibles sur un Spectrum customis !
Et que se passe-t'il si on fait un out sur un port b11111010 ? Vous vous adresserez plusieurs
priphriques la fois. En l'occurrence, l'imprimante et la sortie cassette. Cette bidouille pourrait
tre utile dans certains cas bien particuliers, mais encore une fois il vaut mieux viter ! Et accder de
cette manire des ports en lecture pourrait se rvler fatal votre machine.
Quand le bit 0 du poids faible est zro...
En criture c'est trs simple: l'octet que vous envoyez sera interprt comme ceci:
Bit Signification

0 Couleur du border de l'cran


1 Couleur du border de l'cran
2 Couleur du border de l'cran
3 Sortie cassette
4 Haut-parleur
5 Non utilis
6 Non utilis
7 Non utilis
Les bit 0 2 contiennent la couleur du border. C'est trs simple : Out &FE,1 met la couleur du border
bleu (couleur nl), out &FE,2 met le border rouge (Couleur n2), et ainsi de suite, jusqu' 7.
En lecture, c'est un peu plus ardu car le poids fort du numro de port est utilis !
Ce dernier fonctionne de la mme manire que le poids faible, c'est dire qu'il sert adresser un
numro de demi range de clavier, cette dernire tant dsigne quand le bit qui lui correspond dans
l'octet passe 0.
Attention, seuls les bits 0 4 sont utiliss pour le clavier,
Port
Touches
FEFE
"CAPS SHIFT "V"
FDFE
"A" "G"
FBFE
"Q" "T"
F7FE
"1" "5"
EFFE
"0" "6"
DFFE
"P" "Y"
BFFE
"ENTER" "H"
7FFE
"SPACE" "B"
Le bit correspondant une touche est 0 si elle est enfonce. Le bit 6 correspond l'entre du lecteur
de cassette, les autres sont inutiliss.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

156

TP 7 EAU FORTE
Le but de ce TP est de voir un traitement de surface. Pour cela nous allons raliser une uvre d'art sous
la forme d'une eau forte.
On appelait avant l'acide nitrique de l'eau forte: c'est ce qui a donn le nom de eau forte dans
l'impression.
Les informations en italique m'ont t donnes oralement par le service Chalcographie de la
Bibliothque Royale de Bruxelles (place du muse,1 - 1000 Bruxelles 02/519.56.31).
!
!
!

!
!

On prend une plaque de cuivre (ou bien de zinc) et on met dessus un film de paraffine (ou de
vernis graver (liquide)).
Puis on prend un stylet fin et on creuse le dessin dans la paraffine (attention on creuse les
parties o il ne doit pas y avoir de dessin).
On prend la plaque et on la trempe dans de l'acide nitrique concentr (l'acide nitrique doit
avoir une concentration entre 10 et 25 Baumd): il y aura raction l o il n'y a plus de
paraffine. (On laisse 30 min si l'acide est faible et 5 min si l'acide est fort. C'est ce qu'on
appelle le temps de morsure.).(Plus l'acide est dilu, meilleur sera la gravure).
On rchauffe ensuite la plaque pour enlever la paraffine.
Puis on frotte du cirage noir (ou de l'encre "taille douce" (marque Charbonnel ou LefrancBourgeois) ou on la prpare en mlangeant des pigments avec de l'huile fine) sur la plaque
(qui va dans les sillons), puis on presse sur un papier buvard (ou du papier Franais Archesblanc-250 g ou Rives-250 g ou bien du papier Allemand Zierhall-demi encoll-250-230 g):
on obtient une uvre d'art que l'on nomme au forte.

Remarques:
Au lieu d'utiliser de la paraffine nous utiliserons du papier collant
L'attaque doit durer au moins 5 minutes, car le cuivre doit tre attaqu sur au moins 0,5 mm
Ce principe est utilis pour graver les circuits imprims en lectronique, sauf qu'on utilise du
perchlorure de fer au lieu d'acide nitrique.

Relation entre les Baum et la densit: Be=145145 . Calculez la dilution avec la table au 0.5.1 page 16.
d

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

157

Dr. Gilles OLIVE

TP 8 DETERMINATION D'ENTHALPIES
8.1.

DETERMINATION D'UNE ENTHALPIE DE NEUTRALISATION


Prendre du papier millimtr

La mthode dcrite ci-aprs permet la dtermination d'un Hneutralisation mais aussi le dosage d'un acide
(base) par une mesure de variation de temprature; dans ce cas on l'appelle titrage thermomtrique.
8.1.1.

Dispositif de mesure

burette NaOH 2 M

thermomtre au 1/10
tenu la main

gobelet (fragile) en
polystyrne expans
(isolant thermique)
jouant le rle de
calorimtre (scher
avec du papier, pas
1'actone !)

8.1.2.
!
!
!
!
!
!
!

50 ml d'acide

agitateur magntique

Mode opratoire

Prlever 50 ml (pipette et propipette) d'HCl et les transvaser dans le gobelet


Avant d'entamer les mesures, thermostatiser les 50 ml d'acide dans le gobelet pendant 5 10
minutes
Remplir la burette de NaOH 2 M
Dverser rapidement le NaOH dans le gobelet par portions de 2,5 ml
Entre chaque ajout, mesurer prcisment la temprature ds qu'elle est stabilise
Ds la mesure de temprature effectue, dverser la portion suivante de NaOH, et ainsi de
suite jusqu' un volume total de 40 ml de NaOH
Porter, sur papier millimtr, T en fonction de VNaOH

Refaire la mme exprience avec l'acide actique. Rincer, scher (au papier, pas l'actone) le
gobelet entre les 2 expriences.
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
158
Superposer la courbe de l'acide actique celle de HCl, mais dans une autre couleur. Dduire les deux
Hneutralisation A quoi sont-ils dus ? Pourquoi diffrent-ils ?
8.2.

MESURE DUNE ENTHALPIE DE MELANGE

Le mlange H2SO4/H2O est rput dangereux cause de son fort dgagement de chaleur qui peut aller
jusqu faire bouillir leau au niveau du contact eau-acide et ainsi entraner des projections dacide. Ce
mlange est un des rares cas o un Hml peut tre mesur facilement vu son intensit. Lexistence
dun Hml lors du mlange de deux liquides est li des changements dinteractions molculaires par
rapport celles existant dans les deux liquides purs. Dans le cas du mlange H2SO4/H2O le
dgagement de chaleur est d principalement la formation dinteractions de type ponts hydrognes
entre les molcules H2SO4 et H2O.
8.2.1.
!
!
!

1 prouvette gradue de 100 ml + 1 pissette H2O distille


1 pipette gradue 10 ml munie dune propipette et qui reste plonge dans le flacon H2SO4
pendant cette partie de la manipulation
1 erlenmeyer de 250 ml o doit tre dpos le thermomtre (au 1/10e) entre chaque usage
pour viter les dpts dH2SO4 sur le carrelage de la hotte
8.2.2.

!
!
!
!
!
!
!

Prparation: matriel - sous hotte

Mode opratoire

venir sous hotte avec un erlenmeyer de 100 ml rinc, non sch


y transvaser 40 ml H2O distille (prouvette gradue)
mesurer la temprature de leau laide du thermomtre, bien mlanger
y transvaser prudemment 7 ml dH2SO4 concentr (96 ou 99 %) avec pipette/propipette en
maintenant les goulots de lerlenmeyer et du flacon H2SO4 lun contre lautre !
mesurer sur place (sous hotte), la temprature du milieu immdiatement aprs avoir
homognis
dposer ensuite le thermomtre dans lerlenmeyer 250 prvu cet usage
transvaser lacide dilu (encore chaud) dans un flacon brun H2SO4 2,7 Mde rcupration

Calculs: Utilisez la formule du calorimtre pour calculer Hml en kJ par mole de H2SO4.
8.3.

MESURE DUNE ENTHALPIE DE DISSOLUTION

Nous traiterons le cas du ttraborate de sodium dcahydrat dont la raction de dissociation ionique
est:

La constante dquilibre de cette raction scrit:


ou encore, en termes de molalilts:

CHIMIE INDUSTRIELLE

K S = .m

Ks =

25/03/2005

1re Edition

Tome TP

159

Dr. Gilles OLIVE

(Rappel: la molalit ou concentration molale est le nombre de mole de solut par kg de solvant:
m = mol.kg -1 (mol.kg -1 =

g.kg
M

-1

-1

avec M la masse molaire en g.mol ) )

Comme toutes les constantes dquilibre, Ks varie avec la temprature:

8.3.1.
!
!
!
!
!
!
!
!
!
!
!

K S = C.exp(-H diss /RT)

Mode opratoire

Munissez-vous de deux erlenmeyers de 100 rincs, non secs ; numrotez-les (1) et (2)
Etude 20 C: dans lerlenmeyer (1) introduisez 3 g de borax (balance technique) + 50 ml
(prouvette gradue) deau distille
Etude 30 C: dans lerlenmeyer (2) introduisez 5 g de borax (balance technique.) + 50 ml
(prouvette gradue) deau distille ; plongez cet erlenmeyer dans un bain thermostatique
30 C, lerlenmeyer sera maintenu par une pince et un statif
Les deux erlenmeyers doivent tre agits rgulirement pendant 10 min (on observera un
excs de cristaux non dissous dans les deux cas, on sera donc en prsence de deux solutions
satures)
Pendant ce temps, tarer deux erlenmeyers 100 propres et secs munis de parafilms et
numrots (1') et (2') (balance technique)
Lorsque la phase dagitation des deux premiers erlenmeyers (borax) est termine, laissez
dcanter les cristaux 30 60 secondes en maintenant les erlenmeyers dans leurs milieux
thermiques dorigine
Transfrez depuis lerlenmeyer (1) (20 C) 10 ml de surnageant vers lerlenmeyer sec (1')
cela se fait laide dune pipette de 10 ml sans aspirer de cristaux ! Mesurez la
temprature dans le flacon dorigine au moment du prlvement
Transfrez depuis lerlenmeyer (2) (30 C) 10 ml de surnageant vers lerlenmeyer sec (2')
ce prlvement se fait hors du bain thermostatique, mais il faut dans ce cas agir
rapidement. Mesurez la temprature dans le flacon dorigine au moment du prlvement
Pesez (balance technique) les deux erlenmeyers ayant accueilli les deux prlvements et
munis de leurs parafilms
Titrez chaque erlenmeyer par HCl 0,1 M titrisol + 4 gouttes mthylorange
Tracez le tableau suivant
T
Vquivalence
m
(1)
(2)
Calculez les molalits des deux solutions satures ainsi que le Hdiss (kJ/mol) du borax
laide de la formule

ln(m1 / m 2 )

H diss = 3R
1 1
T2 T1

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

160

TP 9 EXTRACTION DAROME
9.1.

Entranement la vapeur deau

9.1.1.
!
!
!

Extraction du limonne

Avant la sance, plucher 2 oranges, 3 clmentines, 2 pamplemousses ou 3 citrons frais ;


dbarrasser l'corce de la membrane blanche et ne conserver que la partie externe, orange ou
jaune, qui contient l'huile.
Dcouper en morceaux denviron 0,25 cm2, peser 0,01g (balance technique). Placer
l'corce et un mme volume d'eau dans le bol mlangeur d'un mixer ; mixer jusqu' obtention
d'une pure paisse.
Prparer un montage pour entranement la vapeur ; ce dispositif comprend un ballon de 500
ml 3 tubulures log dans un manteau chauffant, une tte entranement la vapeur dans
l'une des tubulures, une ampoule brome dans la deuxime et un bouchon dans la troisime
selon la Figure 2. Transvaser la pure d'corce dans le ballon, introduire 100 ml d'eau dans
l'ampoule et prvoir un erlen de 150 ml pour recueillir le distillat.

Figure 2
!

!
!
!
!
!

Porter le mlange bullition douce, maintenir pendant une vingtaine de minutes puis
augmenter le chauffage pour que le mlange vapeur d'eau/huile distille. Ce mlange se
condense dans le rfrigrant et, dans l'erlen, on recueille de l'eau avec un mince film d'huile
flottant la surface.
Transvaser le contenu de 1'erlen dans une ampoule dcanter ; liminer la phase aqueuse.
L'huile, recueillie dans un petit erlen (25 ml) ou un tube essais large, est dbarrasse des
dernires traces d'eau par addition d'un petit fragment de sulfate de calcium ou de chlorure de
calcium anhydre.
Filtrer pour liminer le desschant.
Observer l'huile obtenue (couleur, odeur) et mesurer l'indice de rfraction
Tester la solubilit de l'huile dans plusieurs solvants organiques: 0,5 ml de solvant/3 gouttes
d'huile ajouter en observant s'il y a solubilit aprs l'addition de chacune.
Comparer les rsultats : noter s'il y a des diffrences et si elles peuvent provenir de l'agrume
utilis.
Rechercher des informations sur le limonne dans le Handbook et le Merck Index.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
9.1.2.

Dr. Gilles OLIVE


Extraction de leugnol

161

Les armes caractristiques des plantes sont dus des huiles volatiles ou essentielles qui, ds
l'antiquit, furent l'origine des parfums et saveurs. Souvent concentres dans les brindilles, les fleurs
et les graines, ces huiles sont soit des mlanges complexes d'hydrocarbures, d'alcools, de composs
carbonyls appartenant la famille des terpnes (graniol, limonne) soit des phnols ou des aldhydes
aromatiques (armes des condiments tels que le clou de girofle, la vanille et la cannelle)
Le but de ce TP est l'isolement par entranement la vapeur de l'huile essentielle du clou de girofle
dont l'odeur agrable est due principalement l'eugnol ou 4-allyl-2-mthoxyphnol. Ce compos est
utilis comme analgsique local doux en soins dentaires et surtout, dans le domaine culinaire, pour
apporter des saveurs.
OH
OCH3

H2C

H
C

CH2

MODE OPERATOIRE
! Fixer un ballon de 500 ml 3 tubulures dans un manteau chauffant ; placer une tte
entranement la vapeur dans l'une des tubulures, une ampoule brome dans la deuxime et
boucher la 3me (voir Figure 2)
! Peser 12 g de clou de girofle, les placer dans le ballon avec 100 ml d'eau distille ; introduire
100 ml dans l'ampoule et prvoir un erlen de 150 ml pour recueillir le distillat.
! Chauffer le contenu du ballon (robinet de l'ampoule ferm) jusqu' bullition et distiller
vitesse rgulire; ajouter de temps en temps de l'eau dans le ballon afin de maintenir le niveau
constant.
! Aprs avoir recueilli 100 ml de distillat, changer de rcipient collecteur : si des gouttes
huileuses s'coulent encore, il y a lieu de distiller au moins 20 ml d'eau supplmentaires.
! Placer le distillat dans une ampoule dcanter, rincer les erlens avec 5 ml de
dichloromthane que l'on ajoute ensuite au distillat. Agiter l'ampoule, laisser les 2 phases se
sparer et recueillir la couche organique dans un erlen de 50 ml, pes au pralable. Rincer la
couche aqueuse et l'ampoule dcanter avec 2 ml de dichloromthane; ajouter cette nouvelle
phase organique celle contenue dans 1'erlen.
! Si la sparation a t soigneusement effectue, il est inutile de scher ; toutefois, si des traces
d'eau subsistent, scher sur sulfate de sodium anhydre et filtrer sur coton. Recueillir le filtrat
dans un autre erlen pes.
! Concentrer et vaporer le dichloromthane l'aide du rotavapor-micro. Peser 1'erlen
contenant le rsidu d'eugnol et calculer le rendement de l'extraction en tenant compte de la
masse de clous de girofle utiliss.
! Lire l'indice de rfraction.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
9.2.

Dr. Gilles OLIVE

162

Extraction par solvant

EXTRACTION ET SEPARATION DES CONSTITUANTS DE LA CANNELLE, DU CAFE ET


DU CLOU DE GIROFLE
1. Introduire dans un ballon (100 ml)
1g de cannelle ou
1g de grains de caf ou
1g de clous de girofle et
20 ml de dichloromthane
puis, placer un rfrigrant en position verticale
2. Chauffer (manteau chauffant) ; maintenir le reflux durant 5 min
3. Refroidir et filtrer
4. Evaporer le solvant (flash distillation) et redissoudre le rsidu dans 1 ml de tolune.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

163

Dr. Gilles OLIVE

TP 10 VISCOSIMETRIE
10.1.

Le viscosimtre que nous allons utiliser - Notice


New! Size #3 increases viscosity range to 1000 cp., with tantalum float to 2000 cp.

VISCOMETER
FALLING BALL TYPE
The Falling Ball Viscometer has been recognized as one of the most effective and accurate instruments for the determination of viscosity.
Now for the first time, a simplified type is available at low cost.
This new instrument utilizes a novel method of releasing the ball and has the following features:

The tube is made of high precision bore glass tubing with stabilizing beads.
Two high precision balls, one of glass and one of stain-less steel, are supplied with each instrument to extend the range.
The ball release device is made of PTFE and sealed with a VITON fluoroelastomer O-ring.
The remaining plastic parts are made from corrosion resistant acetal copolymer.
The ball is observed against a white background with red lines permanently fused into the glass.
Available in three sizes to cover a wide range of viscosity.
Tantalum ball may be purchased separately to double range.
VISCOMETERS, FALLING BALL
Size No.
1
2
3

Range in cp.
0.2 - 10
2 - 100
20 - 1000

Approx K
0.3
3.3
35

Cat.No.
GV-2100
GV-2200
GV-2300

Maximum cp. for each size may be doubled using Tantalum ball, see Spare Parts List.

SPARE PARTS LIST


Description
Glass Tube size #1
Glass Tube size #2
Glass Tube size #3
Release Mechanism
Nut

Cat. No.
GV-2101
GV-2201
GV-2301
GV-2102
GV-2111

Adapter
Knob
Lock Nut
Cap

GV-2112
GV-2113
GV-2114
GV-2115

PTFE Screw
Large VITON O-ring
Large O-ring, pkg/6
Large PTFE O-ring
Large O-ring, pkg/6

GV-2116
GV-2117
GV-2117/6
GV-2117T
GV-2117T/6

Small VITON O-ring


Small O-ring, pkg/6

GV-2118
GV-2118/6

Glass Ball
S.S. Ball
Tantalum Ball

GF-1332
GV-2119S
GF-1332-T

NOTE: The same diameter (1/4 in) ball is used in ail three sizes.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

164

Dr. Gilles OLIVE


DIRECTIONS

ASSEMBLY-The viscometer is supplied with a glass ball and a stainless steel ball (type 316). A tantalum ball may
be ordered separately. The recommended ranges of viscosity for each size and ball are as follows:
Size No.
1
2
3

Range in cp.
S. S.
1 to 10
10 to 100
100 to 1000

Glass
0.2 to 2
2 to 20
20 to 200

Tantalum
2 to 20
20 to 200
200 to 2000

The proper ball is selected and the instrument is scrupulously cleaned and dried. The ball is added to the tube and the
parts are assembled as in the diagram. The position of the knob and locknut are adjusted so that the PTFE screw will
just prevent the ball from falling when the knob is turned to meet the adapter. Unscrewing the knob should allow the
ball to be released. This adjustment should be made with care so as not to over-compress the end of the PTFE screw
which holds the ball.
FILLING WITH LIQUID-The nut and the adapter are separated and the cap is removed from the screw. The ball
is also removed from the tube. Approximately 5 mL of the test liquid is required to fill the tube. The liquid should be
clear of particles and filtered if necessary. Particles in the liquid will interfere with the motion of the ball and reduce
the accuracy of measurement. The liquid is carefully pipetted into the tube until nearly full (approximately 1/4 in
from the top of the flange). The ball is now carefully added and allowed to drop into the tube. The adapter and screw
assembly in the release position is now carefully inserted into the tube and liquid allowed to enter the capillary vent.
The nut and adapter are tightened on the flange of the tube until secure. The cap is replaced on the screw.
TAKING A READING-The instrument full of liquid is inverted until the ball enters the PTFE screw and the knob
turned until the closed position is reached. The instrument is restored to its normal vertical position and is ready for
taking a reading. For the most accurate work, the viscometer tube should be immersed in a constant temperature bath
with a transparent window to observe the fiduciary lines. At elevated temperatures the cap should be
removed to permit excess liquid to pass through the capillary vent. Air and gas bubbles should also be
vented after equilibrium is reached. Then the cap is replaced.
The ball is released by turning the knob to raise the screw. The time of descent between the two sets of
fiduciary lines is measured with a stop-watch. Repeat measurements can be made by removing the
viscometer from the bath and inverting to return the ball to the screw and turning to the closed position.
With good technique measurements, should be reproducible from 0.2 to 1.0 % depending upon the time of
descent.
CALCULATING THE VISCOSITY-For a falling ball viscometer the viscosity is calculated by the
simple formula:
= K(f-)t
where,

t
K

=
=

viscosity in centipoises (cp)


density of ball (gms/mL)
2.53 for the glass
8.02 for stainless steel
16.6 for tantalum
= density of liquid (gms/mL)
= time of descent (minutes)
= viscometer constant

The approximate K for size 1=0.3, size 2=3.3 and size 3=35. The viscometer constant is obtained by
measuring the time of descent for a standard liquid (e.g. a viscosity standard solution).

K=

( f - )t

For the most accurate work, the standard liquid should have physical properties as close to that of the
unknown liquid as possible.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

165

ASSEMBLY INSTRUCTIONS FOR THE


VISCOMETER BALL-RELEASE MECHANISM
The ball-release mechanism is adjusted for proper operation as follows:
With the tube dry and clean:
1. Ensure the ball easily enters and exits the PTFE screw. If not,
remove the ball-release assembly from the tube and open up the
end of the screw with a suitable tool.
2. With the screw retracted, assemble the ball-release mechanism
to the tube. Separate the locknut and knob on the threaded
portion.
3. Holding the cap, advance the screw until the tip is close to being
compressed by the tapered portion of the glass tube.
4. While tilting the assembly back and forth to allow the ball to
enter and exit the screw, advance the screw slightly until the end
is compressed just enough to retain the ball.
5. While holding threaded portion stationary, run knob down
clockwise until it stops against the adapter. Ensure the threaded
portion is not being advanced, as this will cause the PTFE screw
to deform.
6. Tighten the locknut against the knob to act as a jam nut.
7. When properly assembled, turning the knob will advance and
retract the screw. When advanced until the knob meets the
adapter, ball will be held in screw assembly. A 1/4 turn
retraction of the screw assembly should release the ball.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
10.2.

Dr. Gilles OLIVE

166

Manipulation 1
VISCOSIMETRIE

10.2.1.

Dfinition

La viscosit d'un liquide est la proprit de ce liquide, rsultant de la rsistance qu'opposent ses
molcules une force tendant les dplacer par glissement. Au sein d'un liquide homogne, dont la
masse volumique est suppose constante, les dformations auxquelles ce corps peut tre soumis sont
des glissements ou des cisaillements auxquels il oppose une rsistance mesurable. Les liquides
visqueux sont ceux qui manifestent une rsistance F, fonction de la vitesse laquelle se produisent les
glissements imposs et qui s'annule avec elle.
Si, au sein d'un tel liquide, un lment de surface S glisse sur un plan de mme liquide distant de dx,
dv
.
avec une vitesse relative dv, le gradient de vitesse G est conventionnellement gal
dx
F
dv
La tension tangentielle = , ou contrainte de cisaillement, est fonction de
.
S
dx
Si le gradient de vitesse est assez faible pour que la relation entre ces deux grandeurs soit linaire, elle
s'exprime alors par l'quation de Newton:
=

dv
dx

est par dfinition le coefficient de viscosit absolue dynamique ou "viscosit absolue" et est
indpendant du gradient de vitesse.
Les liquides qui suivent cette quation sont appels liquides "newtonien".
Par contre, pour les suspensions collodales, les mulsions, les solutions de composs masse
molculaire leve, la viscosit dpend notamment du prtraitement thermique ou mcanique et il n'y a
pas de relation linaire entre la contrainte et le gradient de vitesse. Ces liquides sont appels liquides
non newtoniens.
10.2.2.

Coefficients et units de viscosit

10.2.2.1.

Le coefficient de viscosit absolue dynamique est gal


=

F dx
d'quation de dimension: M.L-1.T-1
S dv

La viscosit absolue s'exprime dans un systme cohrent d'units. Dans le cas du systme C.G.S. cette
unit est LE POISE (Po) dyne-seconde par cm2.
C'est la viscosit absolue dynamique d'un liquide opposant une rsistance d'une dyne au glissement
dans son plan de surface plane d'un centimtre carr, avec un gradient de vitesse d'un centimtre par
seconde et par centimtre.
Un sous-multiple couramment employ de cette unit est le centipoise (cPc).
En systme M.K.S.A. cette unit est le POISEUILLE (gale 10 poises).
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
10.2.2.2.

167

Dr. Gilles OLIVE


Le coefficient de viscosit absolue cinmatique d'un liquide

est le rapport du coefficient de viscosit absolue dynamique de ce liquide sa masse volumique ; il est
gnralement dsign par le symbole:
=

de dimension L2.T-1

Le STOKES (St) est l'unit de viscosit absolue "cinmatique". C'est la viscosit absolue cinmatique
d'un liquide dont la masse volumique est d'un gramme par centimtre cube et dont la viscosit absolue
dynamique est gale a un poise, tant la masse volumique du liquide, le coefficient est exprime en
stokes.
Un sous-multiple couramment employ de cette unit est le ''centistokes" (cSt).
10.2.3.

Viscosit des solutions

La viscosit relative est le rapport de la viscosit d'une solution la viscosit du solvant 0.


rel =

La viscosit spcifique est le rapport de la diffrence entre les viscosits de la solution et du solvant
la viscosit du solvant:
sp =

10.2.4.

- 0
= rel - 1
0

Loi de Einstein

Pour une suspension de particules sphriques rigides impermables au milieu dispersant et


suffisamment peu nombreuses pour ngliger leur interaction, la viscosit est lie la viscosit du
solvant par l'expression:

5 v
-1 =
0
2V
v: volume occup par toutes les sphres,
V: volume total de solution.
Si vi est le volume d'une particule et C la concentration de la solution en mole/litre
Pour V = 1 litre
Nb de molcules par litre C x N
avec N nombre d'Avogadro = 6,03 1023
v = vi x N x C
4
vi = r 3
r: rayon de la molcule
3
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

5 4
= 1 + x r 3 x 6,03.10 23 x C
0
2 3

= 1 + 6,03 10 24 r 3 C
0
10.2.5.

Dr. Gilles OLIVE

168

Loi de Poiseuille

Dans le cas des liquides newtoniens, leur coulement travers un tube capillaire obit la loi de
Poiseuille. Le rgime d'coulement d'un liquide dans un canal cylindrique de longueur L et de rayon R
varie avec la vitesse d'coulement v et pour des valeurs suffisamment faibles les vitesses des molcules
sont parallles entre elles ; l'coulement se fait par couches concentriques, on obtient le rgime
laminaire ou rgime de Poiseuille.
Le volume total coul durant le temps t est:
v=

r4 t
(p1 - p 2 )
8L

p1 - p2 diffrence de pression aux deux extrmits du tube. Cette diffrence de pression est directement
proportionnelle la densit d du liquide.
L'application de cette formule suppose que le liquide arrive l'orifice de sortie du tube avec une
nergie cintique ngligeable. Si non, il est ncessaire d'effectuer une correction d'nergie cintique en
ajoutant au deuxime membre de l'quation de Poiseuille, le terme:

10.2.6.

V
8Lt

Thorie de Eyring

Eyring suppose que les liquides contiennent des rgions o les molcules peuvent se mouvoir aprs
activation. Les molcules se dplacent en couches parallles en passant par une barrire de potentiel
chaque fois qu'elles atteignent une nouvelle position d'quilibre.
Si Evisco est l'nergie libre standard d'activation par mole, on a:
= A e E visco /RT soit Ln =

E visco
+ Ln A (A = constante)
RT

= 0 e E/RT
On trace Ln = f

()
1
T

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

169

Dr. Gilles OLIVE


ln

E/R
0

1/T
Remarque
La formule de Eyring n'est pas la seule propose mais c'est la plus simple d'emploi.
On suppose que l'coulement d'un liquide est le rsultat du mouvement des molcules dans les sites
vacants dans le liquide. La premire tape de ce processus devant tre la formation des sites
disponibles. Evidemment, la rupture des liaisons entre des molcules avoisinantes ncessaire dans la
formation d'un de ces sites, doit faire intervenir les mmes forces que celles qui interviennent dans le
processus de vaporisation.
Il est intressant de comparer l'nergie d'activation de viscosit et la variation d'nergie interne de
vaporisation (tude faite par Ewell et Eyring). Kincaid en a tir une loi empirique approche:
Evisco = Uvap / 2,45
10.2.7.

MANIPULATION

On tudiera:
1. La variation de viscosit absolue dynamique en fonction de la temprature avec un viscosimtre
chute de bille de HOPPLER, ce qui conduira au calcul de l'nergie d'activation Evisco et d'une
valeur approche de la variation d'nergie interne lors de la vaporisation.
2. La variation de viscosit absolue dynamique en fonction de la concentration avec un viscosimtre
coulement (application de la loi de EINSTEIN).
10.2.8.

Viscosimtre chute de bille de Hoppler

Si la vitesse de chute v et le rayon r de la sphre sont suffisamment petits, l'coulement du fluide


autour de la sphre est laminaire.
Dans ces conditions la loi de Stokes s'applique:
W=6rv
W: rsistance au mouvement d'une sphre de rayon r se mouvant une vitesse uniforme v, sous
l'action de la gravit. Dans ces conditions, on considre la rsistance comme gale au poids effectif de
la sphre.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

170

Tome TP
Dr. Gilles OLIVE
Avec s et l: masses volumiques de la sphre et du liquide en g/cm3.
4
Poids de la sphre: r 3 s g
3
4
Pousse d'Archimde: r 3 l g
3
4
W = 6 r v = r 3 g ( s - l )
3
2 2
= r ( s - l ) g/v
9
Or v =

L
t

L: longueur du tube ; t: temps de chute.


= K (s - l) t
En posant K =

2 2
r g/L
9

K: constante caractristique de l'appareil.

: centipoises
t : en secondes
K et l seront dtermins partir des abaques. On admet que la variation de s en fonction de la
temprature est ngligeable devant les erreurs de mesure. On prendra (s = 2,388 g/cm3) (Voir valeurs
du constructeur)
10.2.8.1.

Rglage de l'appareil

On procdera au rglage du viscosimtre l'aide des vis de nivellement et du niveau bulle.


10.2.8.2.

Remplissage du tube de chute

Fermer le tube de chute avec le bouchon de fermeture infrieure et le couvercle vis.


Remplir avec le fluide mesurer. Pour cela utiliser l'entonnoir servant au remplissage et la vidange,
remplir jusqu', environ 15 mm du bord suprieur du tube.
A l'aide de la pince bille, introduire la bille, nettoye et sche ; s'il se trouve des bulles d'air audessous de la bille, la pousser vers le bas avec la tige de verre.
Fermer l'extrmit suprieure du tube de chute avec le capillaire de fermeture, le bouchon de fermeture
et le couvercle vis. A la mise en place du capillaire de fermeture une partie du fluide mesurer est
repousse travers le capillaire dans la chambre.
Aprs stabilisation thermique (au moins 20 minutes), il suffit de retourner l'appareil et de noter le
temps de passage de la bille entre les repres.
Il est possible de faire des mesures dans les deux positions.
Faire 6 8 mesures des tempratures comprises entre 25 et 40 C.
Calculer et dresser le tableau de rsultats suivant:
C, T,

1
, t, eau, s - eau, K, , log .
T

Tracer log = f
CHIMIE INDUSTRIELLE

( ) et calculer E
1
T

25/03/2005

visco

et Uvap.
1re Edition

Tome TP

Dr. Gilles OLIVE

10.2.9.

171

Viscosimtre coulement

On mesure le temps mis par un volume de liquide contenu dans le rservoir du viscosimtre pour
s'couler par un capillaire calibr sous une charge de liquide exactement reproductible et une
temprature exactement contrle.
L'quation de Poiseuille peut s'crire:
cPo = A d t
A: constante de l'appareil
t: temps d'coulement du volume V dans le capillaire,
d: densit du liquide la temprature de l'appareil.
La densit des solutions tudies est donne en fonction de la concentration (voir fiche technique).

10.2.9.1.

Remplissage de l'appareil. Mesure du temps d'coulement

Introduire dans le viscosimtre une quantit convenable de la solution au moyen d'une pipette jusqu'au
repre de remplissage.
Faire passer la solution par le capillaire du viscosimtre, par soufflage d'air sec au moyen d'une poire
de caoutchouc. Arrter l'opration lorsque le niveau du liquide est juste au-dessus du repre suprieur.
Immerger le viscosimtre dans le bain 25 C 0,1 C.
Fixer le viscosimtre de faon que, d'une part, le niveau du bain soit 20 mm au-dessus du repre de
graduation suprieur et que, d'autre part, l'axe du tube soit parfaitement vertical.
Aprs une attente de 15 minutes au moins laisser le liquide s'couler en mesurant au moyen du
chronomtre le temps mis par le mnisque pour redescendre du repre suprieur au repre infrieur,
c'est le temps d'coulement de la solution.
10.2.9.2.

Rsultats

Prparer 500 ml d'une solution M/2 dans de l'eau dgaze et prparer partir de celle-ci les solutions
suivantes:
M/2 M/3 M/4 M/6 M/8
Mesurer la viscosit 25 C du solvant pur et de chacune des 5 solutions. Calculer la valeur du rapport
/0.
On remarquera que la constante A du viscosimtre n'intervient pas. On dressera le tableau de rsultats
suivant:
C, t,

t d
td
,
,
=
t 0 d 0 0 t 0 d 0

en fonction de C sur un graphique.


0
Pour les faibles concentrations, la loi de variation s'approche de la loi thorique et la portion de courbe
peut tre assimile une droite. On peut alors dterminer r partir de la pente de la droite.

Porter

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

172

Dr. Gilles OLIVE

10.2.10.

ORDRE DES OPERATIONS

La temprature intervenant grandement dans les mesures de viscosit, il importe que l'quilibre
thermique soit correctement tabli.
1. Il n'y a qu'un seul appareil HOPPLER au laboratoire, chaque tudiant en disposera 2 heures. On le
trouvera rempli d'eau et prt fonctionner. Surtout ne pas l'ouvrir. Le rglage de la temprature se
fait par le thermostat plac ct. Si l'on ne sait pas rgler le thermostat demander des
explications. La lecture de la temprature se fait sur le thermomtre plac dans la jacquette et
proche du tube d'exprience.
2. En arrivant, on mettra le viscosimtre coulement, rempli de solvant (ici eau dgaze) stabiliser
en temprature.
3. Les solutions de glycrine dans l'eau dgaze sont prpares de la faon suivante:
Solution M/2: La quantit ncessaire de glycrine (ou glycrol) pure est pese l'aide de la balance
Mettler K7, et tendue avec de l'eau dgaze 500 ml. Bien agiter au fur et mesure que l'on
ajoute l'eau car l'homognit est difficile atteindre.
Solution M/3: A partir de la solution M/2. On dispose d'une fiole de 150 ml. Les autres solutions se
prparent dans des fioles de 100 ml.
Ds que la mesure t faite sur une solution en mettre une autre stabiliser.
10.2.11.

MODIFICATIONS AU LABORATOIRE CI-DESSUS

Pour chaque mesure, faire 3 essais de temps et faire le moyenne (les indiquer au dos de la feuille).
Viscosimtre chute de bille de Hoppler
Il n'y a aucune modification sur cette partie du laboratoire. Pour la densit de l'eau en fonction de la
temprature, on se reportera au 5.1 du Tome 2 de chimie industrielle (Tome sur l'eau).
Viscosimtre coulement
Comme il n'y a pas de viscosimtre coulement, on utilisera le viscosimtre d'HOPPLER. De plus,
au lieu de travailler sur la glycrine on travaille sur le saccharose de masse molaire 342 g.mol-1. On ne
fera pas les solutions M/2 et M/3. On partira directement par 250 ml d'une solution M/4, dont il faudra
calculer la quantit peser. En plus des solutions M/6 et M/8, on prparera des solutions M/12 et M/16
(par dilution bien sur).
Pour calculer les densits, ou du moins le rapport d/d0, on utilisera la relation suivante:
d
= 1 + 0,1306 C avec C = concentration en mol.l-1.
d0
10.3.

Manipulation 2 - Vrification de la loi de Guzman Andrade

Tire de Tension superficielle et viscosit du BTS (Lyce de l'Escaut Valenciennes).


CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

173

Mesures
Vous devrez mesurer huile.
Faire au moins 4 mesures cohrentes du temps de chute (se placer assez loin du point de dpart pour
tre sr d'avoir une vitesse constante). Prendre la valeur moyenne.
En dduire le coefficient de viscosit dynamique (en mPl).
Travailler pour une gamme de temprature allant de la temprature la plus basse possible une
temprature d'au moins 80 C.
Tracer en fonction de T (en K).
Est-ce que la viscosit dynamique de lhuile de cette huile vrifie la loi de Guzman Andrade qui dit
que = A . exp(B/T) avec T en Kelvin.
(Pour rappel selon http://www.educnet.education.fr/rnchimie/gen_chim/sommaire.htm: Quand le
coefficient de viscosit dynamique ne dpend que de la temprature et de la pression, le fluide est dit newtonien ou
linaire.)
10.4. Manipulation 3 - Etude de la variation de la viscosit dune huile lors dun chauffage
trop intense
D'aprs http://www.educnet.education.fr/rnchimie/default.htm
10.4.1.

Manipulation

! le viscosimtre 1 a t rempli dhuile non chauffe et le capillaire rinc avec cette huile
! aspirer lhuile non chauffe au-dessus de lindex suprieur du viscosimtre
! dclencher le chronomtre lorsque la surface de lhuile passe au niveau de lindex suprieur
! arrter le chronomtre lorsque la surface de lhuile passe au niveau de lindex infrieur : soit t1
le temps dcoulement
! le viscosimtre 2 est rempli avec la mme huile mais qui a subi un chauffage trs intense
pendant quelques minutes
! mesurer de mme le temps t2 de vidange.
! on vrifiera chaque mesure que la temprature est la mme.
10.4.2.

Exploitation des rsultats

1. A laide des certificats dtalonnage, dterminer les viscosits des deux huiles sachant que leur
densit mesure au densimtre et inchange au cours du chauffage est d = 0,917 temprature
ambiante.
2. Comment a vari la viscosit aprs le chauffage ?
10.5. Manipulation 4 - Contrle de la polymrisation du styrne - Relation entre masse
molaire et viscosit: loi de Mark - Houwink
D'aprs http://www.educnet.education.fr/rnchimie/default.htm
CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
Dr. Gilles OLIVE
174
Laddition de molcules de polymre un solvant augmente invariablement sa viscosit.
Pour relier cet accroissement de la viscosit aux proprits du solut, on fait intervenir un certain
nombre de grandeurs dpendant de la viscosit dynamique du solvant pur 0 et , celle de la solution.
On dfinit ainsi:
! la viscosit relative: R = / 0
! la viscosit spcifique: sp =( - 0 ) / 0 = R - 1
! la viscosit rduite: Red = sp / C o C est la concentration en solut
! la viscosit intrinsque: [ Red ] = lim Red
C0

La viscosit intrinsque reprsente la variation relative de la viscosit dune solution par unit de
concentration de polymre, dilution infinie. Elle sexprime gnralement en cm3.g-1
Elle correspond labsence de toute interaction molculaire de par lextrapolation dilution infinie.
Elle est directement lie la nature des molcules du solut (polymre)
Relation entre masse molaire et viscosit: loi de Mark - Houwink
Cest une loi empirique : [Red] = K . M

o K et sont des constantes caractristiques du couple polymre - solvant une temprature donne
et M, la masse molaire moyenne du polymre.
La connaissance de K et (Polymer Handbook) permet de dterminer la masse molaire M du
polymre avec une prcision denviron 20 %.
Extrait du Polymre Handbook: ( concentrations exprimes en g/cm3 )
Polymre
Solvant
Temprature C
K.1000
polystyrne
benzne
25
1.03
polystyrne
tolune
20
4.16
polystyrne
mthylthylbutne
25
3.9
polyisobutne
cyclohexane
30
6.6
polyisobutne
benzne
24
8.3
caoutchouc
tolune
25
5.3

0.74
0.79
0.58
0.70
0.50
0.67

Remarque: leffet du polymre sur la viscosit dpend de la forme des molcules de polymre ; dans
un bon solvant, on sattend ce que les chanes de polymres soient solvates, donc allonges. Dans
un mauvais solvant, elles ont tendance rester enroules ou replies.
Etude exprimentale au viscosimtre dOstwald:
CONSTITUTION ET PRINCIPE:
Le viscosimtre dOstwald est un viscosimtre capillaire: on mesure le temps que met un volume V de liquide compris
entre deux repres scouler dans le capillaire (= temps de vidange).
Ce temps de vidange est proportionnel la viscosit dynamique du liquide et inversement proportionnel la pression
motrice ici uniquement de pesanteur (pression de la colonne de liquide) donc la masse volumique du liquide: t = k / .
Les constructeurs dlivrent avec chaque tube, un certificat dtalonnage o intervient plutt K: = K * * t (voir le
certificat dtalonnage du tube utilis)
Si on compare le temps dcoulement dun volume de solvant pur celui dune solution de polymre, on obtient: R = /
o = K t / K o to = t / to car, si la solution est suffisamment dilue, = o.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
10.5.1.
!
!

prparer 100 mL dune solution de polystyrne 12 g /L dans le tolune, soit S6 cette


solution
prparer les solutions suivantes de polystyrne dans le tolune:
Solution
S1
S2
S3
S4
S5

!
!
!
!
!
!

175

Dr. Gilles OLIVE


Manipulation: attention ! travailler sous la hotte, avec des gants.

1 mL qsp 25 mL
2 mL qsp 25 mL
4 mL qsp 25 mL
6 mL qsp 25mL
10 mL qsp 25 mL
S0 = tolune pur

introduire la solution S0 (= tolune pur) dans le viscosimtre, de faon ce que le capillaire


plonge jusquaux graduations
aspirer le liquide plusieurs fois afin de bien rincer le capillaire. Jeter ce liquide de lavage
introduire nouveau la solution S0, rincer mais travailler avec ce liquide.
mesurer le temps dcoulement de cette solution au viscosimtre 20 C, ventuellement
deux fois.
faire de mme pour les autres solutions (en allant de la moins concentre la plus
concentre)
bien rincer tout le matriel avec le tolune.
10.5.2.

Exploitation des rsultats

1. Complter le tableau suivant:


Solution
Temps t en secondes
Concentration en g/cm3
R= (t/t0)
Red = (R - 1)/C
en cm3.g-1

So

S1

S2

S3

S4

S5

2. Tracer grce lordinateur la courbe Red = f(C), montrer que cest une droite.
3. Dterminer [Red].
4. A laide des valeurs donnes par le Polymer Handbook, en dduire la masse molaire moyenne du
polystyrne tudi.

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

176

SOMMAIRE
TP 0 INFORMATIONS DIVERSES ............................................................................. 5
0.1.

CALCINATION AU BEC BUNSEN .................................................................................................................5

0.2.

SOLUTIONS TAMPON .................................................................................................................................5

0.2.1.
Premier mlange1 .................................................................................................................................5
0.2.2.
Deuxime mlange2 .............................................................................................................................7
0.2.3.
Troisime mlange3 .............................................................................................................................8
0.2.4.
Proprits des tampons2 .....................................................................................................................10
0.3.
SOLUTION DE CALIBRATION (PH MTRE)1............................................................................................10
0.4.

INDICATEURS COLORS ..........................................................................................................................10

0.4.1.
0.4.1.1.

Indicateurs de pH................................................................................................................................10
De Riedel-deHan2 ......................................................................................................................11

0.4.1.2.

De Merck3 ...................................................................................................................................12

0.4.2.
Indicateurs d'Oxydo-rduction3 .........................................................................................................14
0.5.
TABLE DENSIT-POURCENTAGE DE QUELQUES BASES ET ACIDES3 .....................................................15
0.5.1.
Acide nitrique .....................................................................................................................................16
0.5.2.
Acide sulfurique .................................................................................................................................17
0.5.3.
Acide phosphorique............................................................................................................................18
0.5.4.
Acide chlorhydrique ...........................................................................................................................18
0.5.5.
Ammoniaque ......................................................................................................................................19
0.5.6.
Lessive de soude.................................................................................................................................19
0.5.7.
Lessive de potasse ..............................................................................................................................20
0.5.8.
Concentrations usuelles de quelques acides et bases..........................................................................20
0.6.
INTERPRTATION DES RSULTATS PAR LE CALCUL STATISTIQUE .......................................................21
0.6.1.
0.6.2.
0.6.3.
0.6.3.1.

Gnralit ...........................................................................................................................................21
Exemple..............................................................................................................................................23
Programmes Informatique en BASIC ................................................................................................24
Version PET CBM .......................................................................................................................24

0.6.3.2.

Version Quick Basic 4.5 ..............................................................................................................25

0.7.

SPECTRE LECTROMAGNTIQUE ...........................................................................................................29

TP 1 ACIDIMTRIE..................................................................................................... 30
1.1.

MISE EN SOLUTION ..................................................................................................................................30

1.2.

NETTOYAGE DE LA VERRERIE ................................................................................................................30

1.3.

NOTE SUR LES RACTIFS "POUR ANALYSE" (P.A.) ...............................................................................31

1.4.

PRINCIPE DE LA TITRIMTRIE ................................................................................................................31

1.5.

LE RLE DE L'INDICATEUR ACIDE-BASE ................................................................................................31

1.6.

DIFFRENTS TYPES DES TITRAGES .........................................................................................................32

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

177

1.6.1.
Titrage direct et inverse......................................................................................................................32
1.6.2.
Titrage en retour .................................................................................................................................32
1.7.
RALISATION PRATIQUE DES SOLUTIONS DILUES ...............................................................................33
1.7.1.
Quelques dfinitions...........................................................................................................................33
1.7.2.
Expression de la dilution ....................................................................................................................33
1.7.3.
Calcul de la dilution ...........................................................................................................................33
1.7.4.
Ralisation pratique............................................................................................................................34
1.8.
PRPARATION D'UNE SOLUTION D'HCL 0,1 M......................................................................................36
1.9.

PRPARATION D'UNE SOLUTION STANDARD DE NA2CO3 (UNE PAR BINME)......................................36

1.10.

STANDARDISATION DE HCL PAR NA2CO3............................................................................................37

1.10.1.
Rappel thorique...............................................................................................................................37
1.10.2.
Ractifs .............................................................................................................................................37
1.10.3.
Mode opratoire................................................................................................................................37
1.11.
PRPARATION D'UNE SOLUTION DE NAOH 0,1 M............................................................................38
1.12.
1.12.1.
1.12.2.
1.12.3.

STANDARDISATION DE NAOH PAR HCL..............................................................................................38


Rappel thorique...............................................................................................................................38
Ractifs .............................................................................................................................................38
Mode opratoire................................................................................................................................38

TP 2 CHROMATOGRAPHIE SUR PAPIER ............................................................ 40


2.1.

PRINCIPE ...............................................................................................................................................40

2.2.

TECHNIQUE GENERALE...................................................................................................................40

2.2.1.
PAPIER ..............................................................................................................................................40
2.2.2.
SOLVANT .........................................................................................................................................40
2.2.3.
APPLICATION DES ECHANTILLONS..........................................................................................40
2.2.4.
OPERATION .....................................................................................................................................40
2.2.5.
SECHAGE DU CHROMATOGRAMME .........................................................................................41
2.2.6.
DEVELOPPEMENT DU CHROMATOGRAMME .........................................................................41
2.2.7.
LE Rf ET LE Rx ..................................................................................................................................41
2.3.
REACTIFS ..............................................................................................................................................41
2.4.
2.4.1.
2.4.2.
2.4.3.

MODE OPERATOIRE ..........................................................................................................................41


CHROMATOGRAPHIE ASCENDANTE ........................................................................................41
CHROMATOGRAPHIE A DEUX DIRECTIONS ...........................................................................42
CHROMATOGRAPHIE DESCENDANTE......................................................................................42

TP 3 SYNTHESE DE L'ACIDE ACETYLSALICYLIQUE ..................................... 43


3.1.

PRINCIPE ...............................................................................................................................................43

3.1.1.
Acetylation .........................................................................................................................................43
3.1.2.
Dosage de l'acide ................................................................................................................................44
3.1.3.
Hydrolyse basique ..............................................................................................................................44
3.2.
REACTIFS ..............................................................................................................................................44
3.3.
3.3.1.

MODE OPERATOIRE ..........................................................................................................................45


TITRAGE DE L'ACIDE ACETYLSALICYLIQUE .........................................................................45

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

178

3.3.2.
INDICE DE SAPONIFICATION ......................................................................................................45
3.3.3.
Chromatographie sur couche mince (CCM).......................................................................................45
3.4.
RECRISTALLISATION .......................................................................................................................46

TP 4 SYNTHSE DU PARACETAMOL.................................................................... 47
4.1.

MATRIEL ET RACTIFS .........................................................................................................................47

4.2.

SYNTHSE DU PARACTAMOL BRUT ......................................................................................................47

4.2.1.
Dissolution du paraminophnol..........................................................................................................47
4.2.2.
Synthse du paractamol ....................................................................................................................48
4.2.3.
Cristallisation .....................................................................................................................................48
4.3.
PURIFICATION DU PARACTAMOL PAR RECRISTALLISATION ..............................................................48
4.4.

CHROMATOGRAPHIE SUR COUCHE MINCE (CCM) ...............................................................................48

4.5.

DONNES ..................................................................................................................................................48

TP 5 ANALYSE D'UNE EAU....................................................................................... 49


5.1.

DURET DE L'EAU ....................................................................................................................................49

5.1.1.
5.1.1.1.

A: Dtermination de la duret de l'eau par acidimtrie ......................................................................50


Rappel thorique. .........................................................................................................................50

5.1.1.2.

Ractifs ........................................................................................................................................50

5.1.1.3.

Matriel ........................................................................................................................................51

5.1.1.4.

Mode opratoire ...........................................................................................................................51

5.1.2.
5.1.2.1.

B: Dtermination de la duret de l'eau par complexomtrie ..............................................................51


Rappel thorique ..........................................................................................................................51

5.1.2.2.

Ractifs ........................................................................................................................................52

5.1.2.3.

Matriel ........................................................................................................................................52

5.1.2.4.

Mode opratoire ...........................................................................................................................52

5.1.3.
5.1.3.1.

C: Mthode au ractif complexant4 ...................................................................................................52


Objet de la norme.........................................................................................................................53

5.1.3.1.1.

Gnralits .............................................................................................................................53

5.1.3.1.2.

Principe..................................................................................................................................53

5.1.3.2.

Ractifs ........................................................................................................................................53

5.1.3.2.1.

Solution tampon (pH 10) .......................................................................................................53

5.1.3.2.2.

Sel disodique de l'acide thylne diamine ttra-actique: .....................................................54

5.1.3.2.3.

Calcium: solution-talon de calcium N/50, telle que 1 ml contienne 0,4 mg de calcium......54

5.1.3.2.4.

riochrome noir T: solution indicateur: ................................................................................54

5.1.3.3.
5.1.3.3.1.

Mode opratoire ...........................................................................................................................54


Prise d'essai............................................................................................................................54

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

179

5.1.3.3.2.

Dosage ...................................................................................................................................54

5.1.3.3.3.

Agiter.....................................................................................................................................55

5.1.3.3.4.

Expression des rsultats.........................................................................................................55

5.1.3.3.5.

Prcision ................................................................................................................................55

5.1.3.3.6.

Procs-verbal d'essai..............................................................................................................55

5.1.3.3.7.

Commentaires........................................................................................................................55

5.1.3.3.8.

Ions gnant le virage..............................................................................................................55

5.1.4.
5.1.4.1.

Mthodes au savon4 ...........................................................................................................................56


Principe ........................................................................................................................................56

5.1.4.2.

Ractifs ........................................................................................................................................56

5.1.4.3.

Mode opratoire ...........................................................................................................................56

5.1.5.
5.1.5.1.

Sparation des durets calcique et magnsienne4 ..............................................................................56


Principe ........................................................................................................................................56

5.1.5.2.

Ractifs ........................................................................................................................................56

5.1.5.3.

Mode opratoire ...........................................................................................................................57

5.1.6.
5.1.6.1.

D: Autres expriences avec l'EDTA...................................................................................................57


Principe ........................................................................................................................................57

5.1.6.1.1.

Dfinition...............................................................................................................................57

5.1.6.1.2.

Influence du pH .....................................................................................................................57

5.1.6.1.3.

Indicateurs .............................................................................................................................58

5.1.6.2.

Mode opratoire ...........................................................................................................................58

5.1.6.2.1.

Prparation d'un litre de solution d'EDTA 0,01 M .............................................................58

5.1.6.2.2.

Prparation de 100 ml de solution talon de carbonate de calcium.......................................58

5.1.6.2.3.

Dtermination du titre de la solution d'E.D.T.A. pH = 10.....................................................58

5.1.6.2.4.

Dtermination du titre hydrotimtrique total d'une eau. pH = 10..........................................59

5.1.6.3.

Expression des rsultats ...............................................................................................................59

5.1.6.4.

Dtermination du degr permanent..............................................................................................59

5.2.

DTERMINATION DE L'ALCALINIT4 .........................................................................................60

5.2.1.
5.2.2.
5.2.2.1.

Modes d'expression ............................................................................................................................60


Mthode classique ..............................................................................................................................60
Ractifs ........................................................................................................................................60

5.2.2.2.

Mode opratoire ...........................................................................................................................61

5.2.2.3.

Calculs..........................................................................................................................................61

5.2.3.
5.2.3.1.

Mthode de Winckler .........................................................................................................................61


Principe ........................................................................................................................................62

5.2.3.2.

Ractifs ........................................................................................................................................62

5.2.3.3.

Mode opratoire ...........................................................................................................................62

5.3.

DTERMINATION DU PH4 ................................................................................................................62

5.4.

DTERMINATION DE LA SALINIT4 ............................................................................................62

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

180

5.4.1.
5.4.2.
5.4.2.1.

Mesure de la densit ...........................................................................................................................63


Dosage des chlorures..........................................................................................................................63
Principe ........................................................................................................................................63

5.4.2.2.

Ractifs ........................................................................................................................................63

5.4.2.3.

Mode opratoire ...........................................................................................................................63

5.4.2.4.

Calculs..........................................................................................................................................64

5.4.3.
Mesure de rsistivit...........................................................................................................................64
5.4.4.
Dtermination extrait sec....................................................................................................................64
5.5.
DOSAGE DES PHOSPHATES1 ...........................................................................................................64
5.5.1.
5.5.1.1.

Mthode colorimtrique au bleu de molybdne .................................................................................65


Principe ........................................................................................................................................65

5.5.1.2.

Appareillage.................................................................................................................................65

5.5.1.3.

Ractifs ........................................................................................................................................65

5.5.1.4.

Mode opratoire ...........................................................................................................................65

5.5.2.
5.5.2.1.

Mthode acidimtrique.......................................................................................................................66
Principe ........................................................................................................................................66

5.5.2.2.

Ractifs ........................................................................................................................................66

5.5.2.3.

Mode opratoire ...........................................................................................................................66

5.5.2.4.

Rsultats.......................................................................................................................................66

5.6.

DOSAGE DES POLYPHOSPHATES1 ................................................................................................67

5.6.1.
5.6.2.
5.6.3.
5.6.4.
5.6.4.1.

Principe...............................................................................................................................................67
Prcaution essentielle .........................................................................................................................67
Hydrolyse du polyphosphate ..............................................................................................................67
Dosage par la mthode colorimtrique au bleu de molybdne...........................................................67
Appareillage.................................................................................................................................67

5.6.4.2.

Ractifs ........................................................................................................................................68

5.6.4.3.

Mode opratoire ...........................................................................................................................68

5.6.5.
Mthode AFNOR ...............................................................................................................................68
5.7.
DOSAGE DE L'OXYGNE1 ................................................................................................................68
5.7.1.
5.7.1.1.

Mthode polarographique...................................................................................................................68
Principe ........................................................................................................................................68

5.7.1.2.

Appareillage.................................................................................................................................69

5.7.1.3.

Mode opratoire ...........................................................................................................................69

5.7.1.4.

Rsultats.......................................................................................................................................69

5.7.2.
5.7.2.1.

Mthode de Winckler .........................................................................................................................69


Principe ........................................................................................................................................69

5.7.2.2.

Prise de l'chantillon ....................................................................................................................69

5.7.2.3.

Ractifs ........................................................................................................................................70

5.7.2.4.

Mode opratoire ...........................................................................................................................70

5.7.2.4.1.

colorimtrique........................................................................................................................70

5.7.2.4.2.

volumtrique..........................................................................................................................70

5.7.3.

O2 dissous - Mthodes utilises au CEBEDEAU5 .............................................................................70

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
5.7.3.1.

Dr. Gilles OLIVE

181

Mthodes normalises..................................................................................................................71

5.7.3.1.1.

Norme belge: NBN 390. Mthode de Winckler. ...................................................................71

5.7.3.1.2.

Suisse: SNV 81506................................................................................................................71

5.7.3.1.3.

Grande Bretagne: BS 2690 (1956). .......................................................................................72

5.7.3.1.4.

Normes internationales applicables l'eau de boisson (Organisation mondiale de la sant,

Genve).

72

5.7.3.1.5.

France: NFT 90.010. Dtermination colorimtrique des faibles teneurs d'O2 libre...............72

5.8.

DOSAGE DE LA SILICE1 ....................................................................................................................72

5.8.1.
5.8.1.1.

Mthode colorimtrique .....................................................................................................................72


Principe ........................................................................................................................................72

5.8.1.2.

Ractifs ........................................................................................................................................73

5.8.1.3.

Mode opratoire ...........................................................................................................................73

5.8.1.3.1.

Teneur en SiO2 suprieure 2 mg/l. ......................................................................................73

5.8.1.3.2.

Teneur en SiO2 infrieure 2 mg/l. .......................................................................................73

5.8.2.
5.8.2.1.

Mthode pondrale .............................................................................................................................74


Principe ........................................................................................................................................74

5.8.2.2.

Ractifs ........................................................................................................................................74

5.8.2.3.

Mode opratoire ...........................................................................................................................74

5.9.

DOSAGE DU MANGANESE5 ..............................................................................................................75

5.9.1.1.

Matriel ........................................................................................................................................75

5.9.1.2.

Ractifs ........................................................................................................................................75

5.9.1.3.

Mode opratoire ...........................................................................................................................75

5.9.1.4.

Normes Etrangres.......................................................................................................................76

5.9.1.4.1.

Pays-Bas: Projet de norme 3130 H 60...................................................................................76

5.9.1.4.2.

Suisse: SNV. 81.502..............................................................................................................76

5.9.1.4.3.

Normes Internationales applicables l'eau de boisson (Organisation mondiale de la sant:

Genve)

76

5.10.

DOSAGE DU FER5 ..............................................................................................................................76

5.10.1.
5.10.1.1.

Dosage des ions ferreux et ferriques.................................................................................................76


KSCN .........................................................................................................................................76

5.10.1.1.1.

Matriel................................................................................................................................77

5.10.1.1.2.

Ractifs ................................................................................................................................77

5.10.1.1.3.

Mode opratoire...................................................................................................................77

5.10.1.1.4.

Dtermination des rsultats:.................................................................................................77

5.10.1.2.

' dipyridyl ..............................................................................................................................78

5.10.1.2.1.

Matriel................................................................................................................................78

5.10.1.2.2.

Ractifs ................................................................................................................................78

5.10.1.2.3.

Mode opratoire...................................................................................................................78

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

182

5.10.2.
5.10.2.1.

Fer complex ....................................................................................................................................79


Matriel ......................................................................................................................................79

5.10.2.2.

Ractifs.......................................................................................................................................79

5.10.2.3.

Mode opratoire .........................................................................................................................79

5.10.3.
5.10.3.1.1.

Mthodes normalises ......................................................................................................................79


Norme belge: NBN 616. ......................................................................................................79

5.10.3.1.2.

Pays-Bas: Projets de Normes: Methoden voor de analyse van water in ketelbedrijf...........80

5.10.3.1.3.

Grande-Bretagne: BS 1427 1962.........................................................................................80

5.10.3.1.4.

France: NFT 90.017, Mai 59. ..............................................................................................80

5.10.3.1.5.

Normes internationales applicables l'eau de boisson (Organisation mondiale de la Sant -

Genve).

80

5.11.

DOSAGE DE L'AMMONIAQUE5 .....................................................................................................81

5.11.1.
5.11.1.1.1.

Mthode par distillation....................................................................................................................81


Matriel................................................................................................................................81

5.11.1.1.2.

Ractifs ................................................................................................................................81

5.11.1.1.3.

Mode opratoire...................................................................................................................81

5.11.2.
5.11.2.1.

Mthode de Nessler ..........................................................................................................................82


Matriel ......................................................................................................................................82

5.11.2.2.

Ractifs.......................................................................................................................................82

5.11.2.3.

Mode opratoire .........................................................................................................................83

5.11.3.
5.11.3.1.

Mthode utilise au CEBEDEAU ....................................................................................................83


Ractifs: .....................................................................................................................................83

5.11.3.2.

Appareillage ...............................................................................................................................84

5.11.3.3.

Mode opratoire .........................................................................................................................84

5.11.4.
5.11.4.1.1.

Mthodes normalises ......................................................................................................................84


Norme belge: NBN 489. ......................................................................................................84

5.11.4.1.2.

France: NFT 90.015, Nov. 56. Dosage colorimtrique........................................................84

5.11.4.1.3.

Grande-Bretagne: RS 2690 (1956), p. 69-72. ......................................................................84

5.12.

DOSAGE DES NITRITES5 .................................................................................................................85

5.12.1.
5.12.1.1.

Ractif de Griess...............................................................................................................................85
Matriel ......................................................................................................................................85

5.12.1.2.

Ractifs: .....................................................................................................................................85

5.12.1.3.

Mode opratoire .........................................................................................................................85

5.12.2.
5.12.2.1.

Ractif de Lombard ..........................................................................................................................86


Matriel ......................................................................................................................................86

5.12.2.2.

Ractifs.......................................................................................................................................86

5.12.2.3.

Mode opratoire .........................................................................................................................86

5.12.3.
5.12.3.1.

Mthode utilise au CEBEDEAU ....................................................................................................86


Ractifs.......................................................................................................................................86

5.12.3.2.

Mthode .....................................................................................................................................87

5.12.4.

Mthodes normalises ......................................................................................................................87

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

183

5.12.4.1.1.

Belgique: NBN 515: Mthode au ractif de Griess. ............................................................87

5.12.4.1.2.

Grande-Bretagne: B. S. 1427 (1962). ..................................................................................87

5.12.4.1.3.

France: NFT 90.013.............................................................................................................87

5.12.4.1.4.

Normes internationales applicables l'eau de boisson (Organisation mondiale de la Sant,

Genve).

87
DOSAGE DES NITRATES5 ...............................................................................................................88

5.13.
5.13.1.
5.13.2.
5.13.3.
5.13.4.
5.13.5.
5.13.6.
5.13.6.1.

Ractif...............................................................................................................................................88
Principe.............................................................................................................................................88
Matriel.............................................................................................................................................88
Ractifs .............................................................................................................................................88
Mode opratoire................................................................................................................................88
Mthode utilise au CEBEDEAU ....................................................................................................89
Ractifs.......................................................................................................................................89

5.13.6.2.

Mthode .....................................................................................................................................89

5.13.6.3.

Calcul .........................................................................................................................................90

5.13.7.
5.13.7.1.

Mthodes normalises ......................................................................................................................90


Norme belge: NBN 525. ............................................................................................................90

5.13.7.2.

Pays-Bas: Projet de Normes 3130 O 63. ....................................................................................90

5.13.7.3.

France: NFT 90.012. ..................................................................................................................90


OXYDABILITE AU PERMANGANATE DE POTASSIUM6.........................................................91

5.14.
5.14.1.
5.14.1.1.

A froid (en milieu acide) ..................................................................................................................91


Ractifs ncessaires....................................................................................................................91

5.14.1.2.

Mode opratoire .........................................................................................................................91

5.14.2.
A chaud (en milieu acide).................................................................................................................91
5.15.
DEMANDE CHIMIQUE EN OXYGENE (DCO)6 ...........................................................................91
5.15.1.
Ractifs ncessaires ..........................................................................................................................92
5.15.2.
Dtermination du titre exact de la solution de sulfate de fer et d'ammonium ..................................92
5.15.3.
Mode opratoire................................................................................................................................92
5.15.4.
Mesure ..............................................................................................................................................92
5.16.
DETERMINATION DES MATIERES EN SUSPENSION6 ............................................................93
5.16.1.
5.16.2.
5.16.3.

Mthode par centrifugation ..............................................................................................................93


Mthode par filtration.......................................................................................................................94
Mthode densimtrique (pour les boues actives). Emploi du Ponsarimtre ...................................94

TP 6 MICROPROCESSEUR Z80 ................................................................................ 95


6.1.

BUT ...........................................................................................................................................................95

6.2.

EMULATEUR ZX SPECTRUM...............................................................................................................95

6.2.1.
Historique des ordinateurs Sinclair ....................................................................................................95
6.2.2.
Les ordinateurs SINCLAIR................................................................................................................98
6.2.3.
Le ZX Spectrum .................................................................................................................................98
6.2.4.
L'mulateur spectaculator.................................................................................................................101
6.3.
DEVPAC................................................................................................................................................103

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

184

6.3.1.
6.3.1.1.

HiSoft GENS3 Programmer's Manual .............................................................................................103


GETTING STARTED ...............................................................................................................103

6.3.1.2.

DETAILS OF GENS3 ...............................................................................................................104

6.3.1.2.1.

How GENS3 Works, Assembler Options, Listing Format etc. ...........................................104

6.3.1.2.2.

Assembler Statement Format...............................................................................................107

6.3.1.2.3.

Labels. .................................................................................................................................107

6.3.1.2.4.

Location Counter .................................................................................................................108

6.3.1.2.5.

Symbol Table.......................................................................................................................108

6.3.1.2.6.

Expressions..........................................................................................................................108

6.3.1.2.7.

Macros. ................................................................................................................................109

6.3.1.2.8.

Assembler Directives...........................................................................................................111

6.3.1.2.9.

Conditional Pseudo-mnemonics. .........................................................................................112

6.3.1.2.10.

Assembler Commands. ......................................................................................................112

6.3.1.3.

THE INTEGRAL EDITOR .......................................................................................................114

6.3.1.3.1.

Introduction to the Editor. ...................................................................................................114

6.3.1.3.2.

The Editor Commands.........................................................................................................115

6.3.1.3.3.

An Example of the Use of the Editor...................................................................................119

6.3.1.4.

APPENDIX 1 ERROR NUMBERS AND THEIR MEANINGS..............................................120

6.3.1.5.

APPENDIX 2 RESERVED WORDS, MNEMONICS ETC. ....................................................121

6.3.1.6.

APPENDIX 3 A WORKED EXAMPLE...................................................................................122

6.3.1.7.

APPENDIX 4 AN EXTENDED CAT PROGRAM ..................................................................126

6.3.2.
6.3.2.1.

HiSoft MONS3 Programmer's Manual ............................................................................................131


GETTING STARTED ...............................................................................................................131

6.3.2.2.

THE COMMANDS AVAILABLE. ..........................................................................................132

6.3.2.3.

APPENDIX AN EXAMPLE FRONT PANEL DISPLAY .......................................................141

6.4.

INTRODUCTION TO Z80 ASSEMBLER ...................................................................................................142

6.4.1.
Binary vs Decimal vs Hexadecimal .................................................................................................142
6.4.2.
The Registers, Memory and Machine Language vs Assembler .......................................................144
6.4.3.
Addition and Subtraction..................................................................................................................145
6.4.4.
Bit Manipulation ..............................................................................................................................147
6.4.5.
Program Flow, more on Flags and The Stack ..................................................................................149
6.4.6.
Memory Manipulation......................................................................................................................150
6.5.
LE TP LUI-MME ...................................................................................................................................151
6.5.1.
6.5.2.
6.5.2.1.

Lancement de Gens ..........................................................................................................................151


Ce qui est demand...........................................................................................................................152
Ecrire son prnom ......................................................................................................................152

6.5.2.1.1.

Mthode 1 ............................................................................................................................152

6.5.2.1.2.

Mthode 2 ............................................................................................................................153

6.5.2.1.3.

Mthode 3 ............................................................................................................................153

6.5.2.2.
6.5.2.2.1.

Bordure ......................................................................................................................................154
Devoir ..................................................................................................................................154

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
6.5.2.2.2.

Dr. Gilles OLIVE

185

Informations techniques ......................................................................................................154

TP 7 EAU FORTE ....................................................................................................... 156

TP 8 DTERMINATION D'ENTHALPIES............................................................. 157


8.1.

DETERMINATION D'UNE ENTHALPIE DE NEUTRALISATION............................................157

8.1.1.
Dispositif de mesure.........................................................................................................................157
8.1.2.
Mode opratoire ...............................................................................................................................157
8.2.
MESURE DUNE ENTHALPIE DE MELANGE .............................................................................158
8.2.1.
Prparation: matriel - sous hotte .....................................................................................................158
8.2.2.
Mode opratoire ...............................................................................................................................158
8.3.
MESURE DUNE ENTHALPIE DE DISSOLUTION......................................................................158
8.3.1.

Mode opratoire ...............................................................................................................................159

TP 9 EXTRACTION DAROME ............................................................................... 160


9.1.

ENTRANEMENT LA VAPEUR DEAU ..................................................................................................160

9.1.1.
Extraction du limonne ....................................................................................................................160
9.1.2.
Extraction de leugnol ....................................................................................................................161
9.2.
EXTRACTION PAR SOLVANT..................................................................................................................162

TP 10

VISCOSIMETRIE ........................................................................................ 163

10.1.

LE VISCOSIMTRE QUE NOUS ALLONS UTILISER - NOTICE...............................................................163

10.2.

MANIPULATION 1.................................................................................................................................166

10.2.1.
10.2.2.
10.2.2.1.

Dfinition........................................................................................................................................166
Coefficients et units de viscosit ..................................................................................................166
Le coefficient de viscosit absolue dynamique est gal .....................................................166

10.2.2.2.

Le coefficient de viscosit absolue cinmatique d'un liquide ..................................................167

10.2.3.
10.2.4.
10.2.5.
10.2.6.
10.2.7.
10.2.8.
10.2.8.1.

Viscosit des solutions....................................................................................................................167


Loi de Einstein................................................................................................................................167
Loi de Poiseuille .............................................................................................................................168
Thorie de Eyring ...........................................................................................................................168
MANIPULATION ........................................................................................................................169
Viscosimtre chute de bille de Hoppler .......................................................................................169
Rglage de l'appareil ................................................................................................................170

10.2.8.2.

Remplissage du tube de chute ..................................................................................................170

10.2.9.
10.2.9.1.

Viscosimtre coulement.............................................................................................................171
Remplissage de l'appareil. Mesure du temps d'coulement .....................................................171

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP
10.2.9.2.

186

Dr. Gilles OLIVE

Rsultats ...................................................................................................................................171

10.2.10.
ORDRE DES OPERATIONS....................................................................................................172
10.2.11.
MODIFICATIONS AU LABORATOIRE CI-DESSUS .........................................................172
10.3.
MANIPULATION 2 - VRIFICATION DE LA LOI DE GUZMAN ANDRADE ............................................172
10.4.

MANIPULATION 3 - ETUDE DE LA VARIATION DE LA VISCOSIT DUNE HUILE LORS DUN

CHAUFFAGE TROP INTENSE ...............................................................................................................................173

10.4.1.
Manipulation...................................................................................................................................173
10.4.2.
Exploitation des rsultats................................................................................................................173
10.5.
MANIPULATION 4 - CONTROLE DE LA POLYMRISATION DU STYRNE - RELATION ENTRE MASSE
MOLAIRE ET VISCOSIT: LOI DE MARK -

10.5.1.
10.5.2.

HOUWINK .......................................................................................173

Manipulation: attention ! travailler sous la hotte, avec des gants...................................................175


Exploitation des rsultats................................................................................................................175

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Tome TP

Dr. Gilles OLIVE

187

BIBLIOGRAPHIE
1.
2.
3.
4.
5.
6.
7.

Tonneau J. Tables de chimie - Un mmento pour le laboratoire. Bruxelles: De Boeck Wesmael, 1991
Laboratory auxiliary tables de Riedel-deHan.
Memento pour le laboratoire de chimie de Merck.
Germain L, Colas L, Jean R. Le traitement des eaux destines l'alimentation des chaudires
vapeur, aux circuits de rfrigration et aux rseaux de distribution d'eaux industrielles et
potables. Paris: Dunod, 1969
Analyse des eaux potables. In: Leclerc E, ed. Livre de l'eau. Lige: CEBEDEAU (Centre Belge
d'Etude et Documentation des Eaux), 1965 (vol Volume II),, 301-323
Mmento technique de l'eau. Paris: Degrmont, 1978
Document Internet: http://www.worldofspectrum.org/Z80.html (2003)

CHIMIE INDUSTRIELLE

25/03/2005

1re Edition

Anda mungkin juga menyukai