Compare commits

...

9 Commits

Author SHA1 Message Date
24e4a8b1e0 update readme 2022-10-14 12:25:54 +02:00
b59599f053 update readme 2022-10-10 16:06:25 +02:00
69a558f152 update readme 2022-10-10 16:04:26 +02:00
deacc2d442 update readme 2022-10-10 15:58:42 +02:00
cc0cff777f ajout readme 2022-10-10 15:54:25 +02:00
82c5c14c83 update cm6 2022-10-03 11:03:44 +02:00
daed8e109c ajout cm6 2022-10-03 08:39:05 +02:00
a93b5fdfcd ajout td5 additionneur 2022-09-30 08:56:18 +02:00
4cb0c61d44 ajout tp3 demontage 2022-09-30 08:43:27 +02:00
4 changed files with 210 additions and 4 deletions

View File

@ -26,17 +26,35 @@ Le programme prévisionnel est le suivant :
- [CM3](cm3-reels.md) : Codage des réels - [CM3](cm3-reels.md) : Codage des réels
- [CM4](cm4-archi.md) : Architecture d'un ordinateur - [CM4](cm4-archi.md) : Architecture d'un ordinateur
- [CM5](cm5-calcul.md) : Calcul booléen - [CM5](cm5-calcul.md) : Calcul booléen
- CM6 : Histoire - [CM6](cm6-histoire.md) : Histoire moderne, licences et technologies
* TD : * TD :
- [TD1](td1-caracteres.md) : Codage des caractères - [TD1](td1-caracteres.md) : Codage des caractères
- [TD2](td2-entiers.md) : Codage des entiers - [TD2](td2-entiers.md) : Codage des entiers
- [TD3](td3-reels.md) : Codage des réels - [TD3](td3-reels.md) : Codage des réels
- [TD4](td4-logique.md) : Logique booléenne - [TD4](td4-logique.md) : Logique booléenne
- TD5 : Additionneur - [TD5](td5-additionneur.md) : Additionneur
- TD6 : TBA - TD6 : Révisions
* TP : * TP :
- [TP1](tp1-encodage.md) : Encodage binaire vers texte 1/2 - [TP1](tp1-encodage.md) : Encodage binaire vers texte 1/2
- [TP2](tp1-encodage-p2.md) : Encodage binaire vers texte 2/2 - [TP2](tp1-encodage-p2.md) : Encodage binaire vers texte 2/2
- TP3 : Dismantle Party - [TP3](tp3-demontage.md) : Dismantle Party
L'évaluation sera composée d'une note de contrôle continu (1/3, à partir des comptes-rendus demandés) et d'une note d'examen final (2/3). L'évaluation sera composée d'une note de contrôle continu (1/3, à partir des comptes-rendus demandés) et d'une note d'examen final (2/3).
Annexe -- Périmètre de la matière
=================================
Ce que vous devez savoir faire :
- les principes des encodages/conversions vus en TD/TP (et savoir les appliquer)
- les manipulations de calcul booléen, les tables de vérité des fonctions de base NON, ET, OU, NON-ET, NON-OU, XOR ainsi que leur représentation en porte logique (pas en transistors ! pas non plus les tables de Karnaugh)
- les composants d'un ordinateur
Ce que vous ne devez pas connaître par cœur (qui serait fourni si nécessaire) mais savoir exploiter :
- les tables de codage (ASCII, ISO-8859-15, Unicode, Base64, ...)
- le nombre de bits pour signe, mantisse et exposant et les offsets d'exposant selon les différentes tailles de flottants
- les décompositions en transistors des portes logiques
Nouvelle matière, nouvel enseignant sur cette matière : il n'y a pas d'anciens contrôles, ceux de l'an dernier ne sont pas représentatifs du programme vu cette année et de ce que vous devrez faire.
Le contrôle sera sans calculatrice et sans documents.

99
cm6-histoire.md Normal file
View File

@ -0,0 +1,99 @@
CM6 Histoire moderne, licences et technologies - Notes de cours
==========================================
- Histoire moderne = échelle de temps des 20 dernières années = votre vie
- Choix de synthétiser, au mieux, selon une lecture politique, les évolutions des pratiques, ce qu'elles reflètent de l'organisation du monde (c'est ça la politique)
- Objectif : aider à initier une compréhension pour savoir vous orienter et comprendre le monde qui vous entoure(ra) au début de votre carrière
- Pour l'histoire "historique" : moteurs de recherche, Wikipedia.
L'informatique, pour quoi ?
===========================
- L'informatique est une science et une technologie
- C'est le support technologique de la numérisation du monde
Ce qu'on peut en faire :
- L'automatisation du répétitif : moins de travail pénible, mais disparition de certains types d'emplois
- Uber : liberté dans l'organisation du travail, mais peu de sécurité en cas d'imprévu
- Bitcoin : échappement d'une structure de marché, mais création d'une autre structure de marché énergivore
- Facebook : outil de regroupement (printemps arabes), mais outil d'influence (élections)
=> Une technologie, ça amène des opportunités et des risques, ce n'est pas neutre !
On va poser 2 éléments de vocabulaires pour comprendre l'articulation et les forces opposées de l'histoire de l'informatique :
- Technologies asservissantes ou émancipatrices
- Libertaires et libertarien·nes
Les licences et usages
======================
Comprendre l'évolution des usages
Avant le cloud
--------------
- Un OS sur son ordinateur
- Des logiciels sur son ordinateur
- Des données sur son ordinateur
L'enjeu : maîtriser ce qu'il se passe sur son poste VS vendre du logiciel
- Des licences *propriétaires*, vente du logiciel sous forme binaire
- Des licences *ouvertes*, logiciel diffusé librement
Et déjà le début de la notion de *captivité* avec les formats de documents :
- Un format fermé permet d'enfermer les utilisateurs avec un logiciel
- Un format ouvert permet de laisser libre le choix du logiciel (et l'émergence d'autres)
=> On arrive sur un vocabulaire captif VS libre, plus représentatif aujourd'hui que propriétaire VS ouvert.
- La captivité véhicule une dépendance, une part d'asservissement
- La liberté véhicule une volonté d'émancipation des utilisateurs
Avec le cloud
-------------
Quelques dates :
- AWS : 2006
- IPhone / Android : 2007
- Google Drive : 2012
L'évolution du cloud :
- Un OS sur son ordinateur, coquille assez vide
- Un navigateur sur son ordinateur (qui reprend beaucoup de ce que fait un OS...)
- Des logiciels hébergés dans le cloud, ie, sur le serveur de quelqu'un d'autre
- Des données sur ces serveurs tiers
L'enjeu : maîtriser la collecte et le contrôle de nos données VS rentabiliser un service (abonnement, pub)
- Les termes captif/libre reflètent l'état de nos données
- La licence d'un logiciel qui s'exécute ailleurs ne nous apporte plus beaucoup de garantie...
- Est-ce vraiment le logiciel non modifié ?
- Une observation a-t-elle lieu avant/après sur le chemin ?
- On ne contrôle pas l'évolution des versions ou des fonctionnalités
=> Le problème s'est déplacé, du logiciel libre dans un monde cloud ne répond plus à l'opposition de départ :
- Avec un Android qui contient beaucoup de libre, sommes-nous dans une posture de dépendance ou d'émancipation ?
- Et si Uber utilise uniquement du logiciel libre ?
Fermé, Ouvert, Libre ?
----------------------
Il faut distinguer le modèle de développement et l'enjeu politique.
Deux modèles de développement :
- Fermé, préservation des secrets de fabrication, développeurs internes à rémunérer
- Ouvert, pas de secrets, mutualisation des coûts avec d'autres organisations
Différents enjeux :
- Vendre du logiciel, du service, de l'hébergement, de la pub... => Intérêt lucratif
- Diffuser du pouvoir de faire quelque chose => Intérêt collectif / non lucratif
Choisir une licence est un acte politique :
- le modèle de développement : ouvert ou fermé ?
- les implications de réutilisation : peut-on faire de l'argent avec le travail donné ? Licence contaminante ou pas (GPL vs Apache/BSD/...). Si contaminante, seulement localement ou aussi par les interactions réseau (GPL vs AGPL)
- les restrictions d'usage : peut-on utiliser mon logiciel pour faire n'importe quoi ? Licences à réciprocité, Coopcycle (2016). Plus libertaires que les autres si on réfléchit par projet politique sous-jacent, moins libertariennes si on réfléchit restriction des usages.
Concrètement, aujourd'hui :
- L'open-source a plutôt gagné comme modèle de développement. Mais il y a toujours plus d'argent dans l'éco-système numérique donc ce n'est pas très libre... On est sûrement moins libres avec le cloud et nos smartphones aujourd'hui qu'on ne l'était hier avec moins de LL et des PC...
- Les mouvements du libre, de l'ouvert et du captif ne peuvent être compris que si l'on entend qu'ils sont notamment politiques (en bonne proportion)

44
td5-additionneur.md Normal file
View File

@ -0,0 +1,44 @@
TD5 Additionneur et bascule
===========================
Additionneur
============
Nous allons concevoir un additionneur à 2 bits, en plusieurs étapes.
1/2 additionneur
----------------
Le 1/2 additionneur fait l'addition et expose la retenue en sortie, mais ne gère pas de retenue en entrée. Il a donc 2 entrées a et b à additionner, et 2 sorties s (somme) et c (carry, retenue).
> Question 1 : Écrivez les tables de vérité souhaitées pour s et c en fonction de a et b. Une fois écrites, à quelles fonctions logiques connues correspondent ces deux tables ?
> Question 2 : Tracez, avec des portes logiques, le schéma de ce demi-additionneur.
Additionneur 1 bit
------------------
L'additionneur 1 bit permet de gérer la retenue en entrée. Il a donc 3 entrées a, b et c<sub>in</sub> (retenue en entrée), et 2 sorties s et c<sub>out</sub>.
> Question 3 : Écrivez les tables de vérité souhaitées pour s et c<sub>out</sub> en fonction de a, b et c<sub>in</sub>. Une fois écrites, à quelles fonctions logiques connues correspondent ces tables ?
> Question 4 : Tracez, avec des portes logiques, le schéma de cet additionneur. Indice : Pour un additionneur, il faut 2 demi-additionneurs en cascade + un OU pour gérer la retenue.
Additionneur 2 bits
-------------------
L'additionneur 2 bits permet d'additionner 2 nombres sur 2 bits, sans retenue en entrée (mais donc une retenue intermédiaire + une sortie matérialisant qu'il y a eu débordement, ie, une retenue finale). Il a donc 4 entrées a<sub>0</sub>, a<sub>1</sub>, b<sub>0</sub> et b<sub>1</sub>, et 3 sorties s<sub>0</sub>, s<sub>1</sub> et c (débordement)
> Question 5 : Tracez, avec des portes logiques, le schéma de cet additionneur 2 bits.
Bascules
========
La bascule est un élément permettant de conserver un état transitoire, par exemple pour faire une mémoire. Vous trouverez la description du verrou RS [ici](https://fr.wikipedia.org/wiki/Bascule_(circuit_logique)#Verrou_RS_avec_porte_NON-OU), avec des portes NOR ou NAND.
> Question 6 : Avec des couleurs, représentez sur les schémas en portes logiques les différentes combinaisons d'entrées et les états intermédiaires associés. Par exemple, si la couleur verte correspond aux entrées S=0 et R=1, écrivez en vert sur chaque fil la valeur présente 0 ou 1.
> Question 7 (bonus) : Faîtes de même pour d'autres bascules (verrou D, bascule D, ...)

45
tp3-demontage.md Normal file
View File

@ -0,0 +1,45 @@
TP3 (Dé)montage d'un ordinateur (1h30)
======================================
Vous avez un ordinateur, un tournevis, et 1h30 devant vous. Durant ce temps, votre mission, que vous ne pouvez refuser :
- ouvrir un ordinateur
- démonter tout ce que vous pouvez
- remonter pour le groupe suivant
Le dernier point est extrêmement important et évidemment le plus proche de l'impossible : puisque les mêmes ordinateurs vont être utilisés pour tous les groupes TP, votre boîtier doit être remis en état correct (permettant son re-démontage) avant la fin de la séance. Vous prévoirez impérativement les 30 dernières minutes pour cela.
> Ce TP est à réaliser en binôme. Un compte-rendu devra être déposé sur Moodle, en format PDF uniquement. Un seul compte-rendu par binôme suffira (pensez bien à mettre les 2 noms sur le document !)
Les composants
==============
Commencez par ouvrir le boîtier.
> Question 1 : Trouvez et repérez sur la photo l'alimentation, la carte mère, le CPU, la RAM, le disque dur, les éventuels lecteurs de disques et cartes d'extension.
> Question 2 : Trouvez la référence de la carte mère et retrouvez ses spécifications précises sur Internet.
> Question 3 : Retirez les barrettes de RAM, trouvez leur référence et leur spécification complète (recherche internet).
> Question 4 : Retirez le ventirad sur le CPU et accédez au CPU. Détachez le CPU de la carte-mère (il y a une manipulation souvent avec un levier). Pouvez-vous trouver la référence du CPU ? Quel est le type de socket ?
> Question 5 : Observez tous les connecteurs branchés sur la carte mère. Sur une photo, légendez l'usage de chaque connecteur. Assurez-vous que la photo permette bien d'observer les couleurs des fils pour vous aider si besoin lors du remontage.
> Question 6 : Retirez le disque dur du boîtier et essayez de l'ouvrir. Décrivez l'intérieur en légendant une photo. (Attention, ne faîtes jamais cela sur un disque dur utilisé, l'ouverture va le rendre inutilisable si c'est un disque à plateaux)
> Question 7 : Sortez l'alimentation du boîtier. Quels types de prises avez-vous (noms des connecteurs) ? Quelle est la signification des couleurs de câbles ? Ouvrez la. Reconnaissez-vous certains éléments ? Légendez une photo.
> Question 8 : Retirez la carte mère, si possible sans débrancher tous les fils type USB ou boutons/voyants de façade (il y a normalement la longueur pour poser la carte mère sur le boîtier ; lors du montage, quand c'est possible, on branche les fils *puis* on met la CM à sa place dans le boîtier)
Compte-rendu
============
Votre compte-rendu sera évalué autant sur le fond que sur la forme.
Il doit contenir les réponses aux questions, le déroulé de votre travail ainsi que vos photos d'illustration légendées. Une attention particulière doit être apportée à la clarté des explications.
Il doit être bien présenté et structuré. Il doit impérativement mentionner, sur la première page, le nom de la matière, le numéro et nom du TP ainsi que les **noms, prénoms et groupe** des 2 membres du binôme. Tout prénom/nom absent des documents déposés recevra 0 au TP.
Le compte-rendu doit être déposé sur Moodle au format PDF uniquement. Un dépôt par binôme suffit.