Compare commits
8 Commits
0008be03c2
...
master
Author | SHA1 | Date | |
---|---|---|---|
24e4a8b1e0 | |||
b59599f053 | |||
69a558f152 | |||
deacc2d442 | |||
cc0cff777f | |||
82c5c14c83 | |||
daed8e109c | |||
a93b5fdfcd |
24
README.md
24
README.md
@ -26,17 +26,35 @@ Le programme prévisionnel est le suivant :
|
||||
- [CM3](cm3-reels.md) : Codage des réels
|
||||
- [CM4](cm4-archi.md) : Architecture d'un ordinateur
|
||||
- [CM5](cm5-calcul.md) : Calcul booléen
|
||||
- CM6 : Histoire
|
||||
- [CM6](cm6-histoire.md) : Histoire moderne, licences et technologies
|
||||
* TD :
|
||||
- [TD1](td1-caracteres.md) : Codage des caractères
|
||||
- [TD2](td2-entiers.md) : Codage des entiers
|
||||
- [TD3](td3-reels.md) : Codage des réels
|
||||
- [TD4](td4-logique.md) : Logique booléenne
|
||||
- TD5 : Additionneur
|
||||
- TD6 : TBA
|
||||
- [TD5](td5-additionneur.md) : Additionneur
|
||||
- TD6 : Révisions
|
||||
* TP :
|
||||
- [TP1](tp1-encodage.md) : Encodage binaire vers texte 1/2
|
||||
- [TP2](tp1-encodage-p2.md) : Encodage binaire vers texte 2/2
|
||||
- [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).
|
||||
|
||||
|
||||
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
99
cm6-histoire.md
Normal 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
44
td5-additionneur.md
Normal 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, ...)
|
Reference in New Issue
Block a user